构造函数
let obj = New X()
- 自动创建了一个空对象
- 自动为空对象关联原型,原型地址指定为 X。prototype
- 自动将空对象作为 this 关键字运行的构造函数
- 自动 return this
构造函数本身 X
- X 函数负责给对象本身添加属性
- X.prototype 对象负责添加新对象的共有属性(X.prototype 存着原型的地址)
如何确定一个对象的原型是什么?
- 对象.__proto__=== 其构造函数.prototype
- Object.prototype === null,Object 是一个根对象,没有原型
代码规范
- 构造函数 首字母大写
- 被构造出的对象首字母小写
- 构造函数名称一般使用名词,其它函数名称使用动词开头
- window 是由 Window 构造的
- window.Object 是 Function 构造的
- 浏览器构造了 Function 并且指定它的构造者就是自己
Class 新语法
class Square{constructor(width){
this.width =width
getArea(){return this.width*this.width}
}
getLength(){return this.width*4}
}