对于传统的OOP思想,JS的语法确实比较难搞,其中之一就是实例和对象的区别. 什么是实例? 实例是类的具体化产品. JS语法没有类这个概念(当然ES6引用了类这个概念).只能通过构造函数来创建类,例如: var person = new Object(); //person就是实例 什么是对象? JS是面向对象的语言,一切都是对象,那么函数也是对象.实例也是对象.对象字面量也是对象,而且JS中所有对象的成员都是公用的. 即:对象是一个具有多种属性的内容结构! 所以:实例都是对象,而对象不全是实例
之前对JS的prototype知识比较模糊,今天理清了记下来,以防忘记,直切正题: 1.要明白原型链,就必须先清楚JS的构造函数模式: js是面向对象的语言,既然是面型对象,就一定会有一个对象的模板,Java中用"类"来作为对象的模板,而JS中,可以用构造函数来作为对象的模板,你可以认为相当于Java中的"类", 写法如下所示: function Cat(name,color){ this.name=name; this.color=color; } var c =