原型链
Javascript引擎的追踪方式是依据原型链
创建一个obj.xxx
1.先在当前对象上查找
2.(找不到)追踪到object.prototype上查找
3.(找不到)返回undedefine
prototype:原型
如创建一个数组
var arr = [1, 2, 3];
arr ---> arr.prototype ---> Object.prototype ---> null
function a(x) {
return x
}
a ---> Function.prototype ---> Object.prototype --->null
- 当上一级定义了如indexof()方法,其子对象皆可以使用。
构造函数
通过函数用new
构造一个对象称之为构造函数,如果没有用new
构造一个函数则称之为普通函数
function Student(name) {
this.name = name;
this.showname = () => {
alert("my name is "+ name);
}
}
var xiaoming = new Student('xiaoming');
xiaoming.showname();
xiaoming ---> Student.prototype ---> Object.prototype ---> null