js中的prototype和constructor
2020-12-13 06:02
标签:des style blog class c code 对象不用解释。函数也有属性,常见之一就是prototype。常量也有属性: 函数是一种特殊的对象,它可以直接通过小括号来执行自身代码。 函数还有一个特殊的属性prototype,它也是一个对象。 prototype对象也有一个特殊的属性constructor,初始的时候它是指向该函数的。 也就是当js解释到function关键字的时候,会创建两个对象,一个是function本身,一个是prototype对象。同时将该函数对象的prototype属性指向prototype,而prototype对象的constructor属性指向该函数对象。 每个对象都有一个__proto__属性(低版本的IE中可能没有直接给出吧),该属性十分特殊,因为在调用对象的方法或者访问对象的属性时,js会依次遍历对象本身,该对象的__proto__,该对象的__proto__的__proto__…… 也就是原型链继承的关键 new 关键字用于通过一个函数创建一个方法。 其实它主要完成三个工作 最后返回该对象即可。可以以下面的代码代替 其中:xFunction是自定义的函数,xPrototype是xFunction的原型,xObject=new xFunction() Object 是JS内置的Object;_prototype_是Object的原型 Empty是所有函数对象的__proto__,是一个特殊的函数,没有prototype, 希望大家可以共同探讨,给予指点 js中的prototype和constructor,搜素材,soscw.com js中的prototype和constructor 标签:des style blog class c code 原文地址:http://www.cnblogs.com/errorx/p/3738370.html本文正确性有待商榷,高手路过请不吝指教
1.js中只有对象,包括对象,函数,常量等。
(3).__proto__;//Number {}
2.函数的prototype
3.对象的__proto__属性
4.new关键字
function New(f,args){var a= {};a.__proto__ = f.prototype;f.apply(a,args);return a;}
5.js对象关系图
上一篇:Java实现邮件发送功能
下一篇:cdll和windll的区别