JS创建对象的方式
一、通过对象字面量表示法
二:通过new和构造函数Object()、String()等
三:用自定义构造函数来初始化新对象
一、通过对象字面量表示法
对象字面量也可以先创建,再添加属性和方法。
二:通过new和构造函数Object()、String()等。
这里的函数称做构造函数(constructor)。
如果构造函数无参数,括号则不是必需的。
因此可以采用下面的形式重写上面的两行代码:
方式三:用自定义构造函数来初始化新对象。
changeName() 函数 name 的值赋给 person 的 lastname 属性。
new 关键字到底做了什么呢?JS引擎做的工作就是下面这样
1.首先创建一个新对象
2.把obj的__proto__ 指向Person的原型对象prototype,此时便建立了obj对象的原型链:obj->Person.prototype->Object.prototype->null
3.在obj对象的执行空间调用Person函数并传递参数“王方”。 相当于var result = obj.Person("王方")。当这句执行完之后,obj便产生了属性name并赋值为"王方"。
4.判断返回值,如果无返回值或者返回一个非对象值,就将obj返回,否则讲返回值作为新对象返回
四:工厂模式
五、原型模式
网友评论