在Javascript中,如果我们有一个对象但是又不知道它的构造函数时,如何获取它的原型对象呢?
在Chrome中或是FireFox浏览器中,我们可以直接使用对象的__proto__属性获取它的原型对象。
<!-- lang: js --> function F(){}; var foo = new F(); alert(foo.__proto__ == F.prototype);
但是,__proto__属性在IE浏览器中一直到IE11才被支持。
那么在不支持__proto__属性的浏览器中,我们怎么得到对象的原型对象呢?可以通过constructor间接得到。
<!-- lang: js --> function F(){}; var foo = new F(); alert(foo.constructor.prototype == F.prototype);
constructor属性不是对象自己的属性,而是顺着原型链向上从原型对象中获取的。这个属性指向的是这个原型对象所对应的构造函数。而构造函数的prototype属性指向了原型对象, 所以这样我们就可以间接得到了。
以上所述就是本文关于javascript中获取原型对象的全部内容了,希望大家能够喜欢。
本文向大家介绍JavaScript获得指定对象大小的方法,包括了JavaScript获得指定对象大小的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JavaScript获得指定对象大小的方法。分享给大家供大家参考。具体如下: 用法如下: 希望本文所述对大家的javascript程序设计有所帮助。
问题内容: 是否有一个JavaScript的等效的Java的? 问题答案: 是否有与Java等效的JavaScript ? 没有 。 名称为。不论类别如何,的类别名称均为。ES2015环境中的内置构造函数具有正确的属性;例如是。 但是,这里有各种各样的骇客,它们都以一种或另一种方式下降: 这是一种可以满足您需要的技巧-请注意,它会修改Object的原型,而人们对此并不满意(通常是出于充分的理由)
在这部分内容的第一章中,我们提到了设置原型的现代方法。 __proto__ 被认为是过时且不推荐使用的(deprecated),这里的不推荐使用是指 JavaScript 规范中规定,proto 必须仅在浏览器环境下才能得到支持。 现代的方法有: Object.create(proto, [descriptors]) —— 利用给定的 proto 作为 [[Prototype]] 和可选的属性描述
本文向大家介绍javascript中对象的定义、使用以及对象和原型链操作小结,包括了javascript中对象的定义、使用以及对象和原型链操作小结的使用技巧和注意事项,需要的朋友参考一下 本文实例总结了javascript中对象的定义、使用以及对象和原型链操作。分享给大家供大家参考,具体如下: 1. 除了5种基本类型外,JS中剩下的就是对象 (1)对象的定义: 直接定义: new方式创建: Obj
本文向大家介绍JavaScript中定义对象原型的两种使用方法,包括了JavaScript中定义对象原型的两种使用方法的使用技巧和注意事项,需要的朋友参考一下 第一种: 第二种: 个人比较喜欢第二种;第二种可以的原型中可以拓展各种方法,用起来比较顺手。 例如可以写: 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持呐喊教程!
本文向大家介绍举例说明JavaScript中的实例对象与原型对象,包括了举例说明JavaScript中的实例对象与原型对象的使用技巧和注意事项,需要的朋友参考一下 首先声明:javascript中每个对象都有一个constructor属性和一个prototype属性。constructor指向对象的构造函数,prototype指向使用构造函数创建的对象实例的原型对象。 在这段代码中会报错,sayN