版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dong001687/article/details/81836575
在js中对象就是神一般的存在,什么都是对象(包括函数),你就这么理解好了。
函数是用来实现具体功能的代码,用一种方式把他们组织起来,就是函数了。
对象是有属性和方法的一个东西,在对象中的函数就变成了方法。
刚学习js不用太纠结这些概念性的东西吧。慢慢用多了就自然而然熟悉了。
所有的函数(除了一些内建函数)都有一个名为prototype(原型)的属性,这个属性是一个指针,指向一个原型对象,而这个对象的用途是包含可以有特定类型的所有实例共享的属性和方法。(并且有一个constructors(构造器)属性,指回原来的构造函数)
对象具有属性__proto__,可称为隐式原型,一个对象的隐式原型指向构造该对象的构造函数的原型(prototype),这也保证了实例能够访问在构造函数原型中定义的属性和方法。
所以 对象的.__proto__ == 构造函数.pertotype; 他俩都指向同一个原型对象
function fc(name){
this.name=name;
}
var fc1 =new fc('zxd');
console.log(fc.prototype==fc1.__proto__); //true