美文网首页
面向对象&原型&原型链

面向对象&原型&原型链

作者: 陈陈_2140 | 来源:发表于2019-02-03 20:56 被阅读0次

1、js对象就是系列key:value的组合,面向对象编程在大部分编程语言中都有所提及,其基本思想是将某个功能看成一个整体(对象)封装在一个对象变量中,通过调用对象的某个方法来启动功能,在用的时候不去考虑这个对象内部的具体实现细节,在实现对象细节的时候也不需去管谁在调用。

2、可通过字面量、通过函数构造和new三种方法来构造一个对象,字面量方法每构造一个对象都需逐个对每个属性赋值,太过繁琐;使用函数构造对象代码如下:

```

function createObj(nick,name){

var obj = {

nick:nick,

name:name,

printName:function(){console.log(this.nick)}

}

return obj

}

var obj2 = createObj('Byron',30)

```

通过调用函数createObj将参数传递给对象之后return出来,并赋值给obj2,实现构造对象;

使用new构造对象相比于上面构造函数则更加简单,思路基本相同,其代码如下:

```

function Person(name){

this.name = name

this.sayName = function(){console.log(this.name)}

}

var p = new Person('hunger')

```

执行过程中主要进行了如下操作:

a、执行new Person时创建了一个空对象,其__proto__指向Person的原型prototype;

b、传递参数 将括号中的参数逐个传递给空对象,该对象获取到函数Person的所有属性和值;

c、该对象返回给p,实现对象p的构造。

3、原型链三大金句:

a、当new一个函数时会生成一个对象,该对象的__proto__指向构造函数的原型prototype;

b、一起函数都是Function构造的,所以任何被构造函数f.__proto__ = Function.prototype;

c、一切函数的原型对象prototype都是由Object构造的,因此任意原型对象.__proto__ = Object.prototype.

相关文章

  • lesson 5 面向对象及原型链 2021-04-29

    课程标题 面向对象及原型链 课程目标 面向对象思想 原型及原型链 继承 知识点 面向对象思想 原型链的指向 new...

  • 1.web前端基础储备之—js的面向对象风格以及原型和原型链

    javascript是面向对象风格,基于原型的语言。 目标:了解js面向对象和原型原型链的关系 面向对象(OOP)...

  • 前端面试准备--5.原型链

    *原型链(面向对象的一个基础) 1.创建对象有几种方法 2.原型、构造函数、对象实例、原型链 3.instance...

  • JS汇总---面向对象&数组

    面向对象 js原型链的继承 静态属性怎么继承 js原型链以及特点 面向对象有哪几个特点 封装,继承,多态 对象的继...

  • 在nodejs中面向对象:Bearcat

    JS中的面向对象 最最最开始,我们先来说说JS中的面向对象。 原型链 参考文章:图解Javascript原型链 J...

  • Javascript面向对象之组件

    高级面向对象 包装对象(13) js基于原型的程序 String Number Boolean 原型链(14) 实...

  • 面向对象、原型、原型链

    构造对象方式 字面量的方式 问题 太麻烦了,每次构建一个对象都是复制一遍代码 如果想个性化,只能通过手工赋值,使用...

  • 面向对象&原型&原型链

    1、js对象就是系列key:value的组合,面向对象编程在大部分编程语言中都有所提及,其基本思想是将某个功能看成...

  • 原型链

    原型链: 是整个面向对象的基础 创建对象有几种方法: 原型、构造函数、实例、原型链:(这块的演示可以用M来进行演示...

  • Js面向对象

    一、Js面向对象 二、Js原型及原型链 1、原型 JavaScript 的每个对象都继承另一个父级对象,父级对象称...

网友评论

      本文标题:面向对象&原型&原型链

      本文链接:https://www.haomeiwen.com/subject/voyysqtx.html