- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在阅读this post 。它定义了一个简单的数组:
var myArray = [1, 2];
myArray.push(3);
myArray.reverse();
myArray.pop();
var length = myArray.length;
然后尝试(并成功)通过 Object.getPrototypeOf 获取其原型(prototype)。然而,当我在 Firebug 和 Chrome 的控制台中对此进行测试时,我得到一个空数组。为什么?.
但是,当我对一个对象(在本例中是同一篇文章中定义的点对象)执行相同操作时,我实际上得到了它的原型(prototype)。
最佳答案
Chrome 的开发者工具将 Array.prototype
显示为数组,因为它满足此行为的两个要求:
.length
属性.splice
功能数组实例具有这些属性,因此您将数组视为实际数组,这很有帮助。问题是,由于这些规则,根据 Chrome 开发者工具,Array.prototype
也是一个数组( which it also is ,但它不是一个非常有用的可视化,因为它不应该包含元素)。
如果您计算 Object.getPrototypeOf(myArray) === Array.prototype
,您将得到 true
。只是 Chrome 的开发者工具没有按照您的预期显示 Array.prototype
。
关于javascript - Object.getPrototypeOf 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9854294/
对于下面的代码,我想知道为什么 Object.getPrototypeOf(person) 可以工作,但 person.getPrototypeOf(person) 不起作用?我认为规则是:如果对象没
在this video (大约 31 分钟),Crockford 说他们(代表 ECMAScript 委员会发言)建议不要使用Object.getPrototypeOf。他的解释是,它并不是真正适用于
我正在阅读你不懂JS,并且混淆了 getPrototypeOf 和 isProtytypeOfs 的结果。代码如下: function Foo(name) { this.n
我正在尝试学习 javascript,并且正在从 Mozilla 文档中学习 Object。一切都很好,直到我看到这个例子。 It is the first example with the head
我有以下 Javascript 片段:` var alien = { kind: "alien" }; var person =
我正在阅读this post 。它定义了一个简单的数组: var myArray = [1, 2]; myArray.push(3); myArray.reverse(); myArray.pop()
非常简单: 我有代码使用Object.getPrototypeOf(...)来获取Dojo Widget的继承类(只是一个JS对象)。 IE8 不支持 Object.getPrototypeOf(..
Object.getPrototypeOf(obj) 是如何工作的? 根据定义,Object.getPrototypeOf(obj) 应该返回对象的原型(prototype)属性,或者以其他方式返回与
非常简单: 我有代码使用 Object.getPrototypeOf(...) 获取 Dojo Widget 的继承类(只是一个 JS 对象)。 IE8 不支持 Object.getPrototype
我正在学习一些 JS,我希望有人能用简单的术语向我解释 Object.getPrototypeOf() 与 .prototype 之间的区别 function ParentClass() {} fun
查看这个类的定义: function MyClass (property) { // Private var privateVariable; var privateMetho
所以我知道“null”是一种“对象” 但是,当我执行 Object.getProtoTypeOf(null) 时,我收到错误。 instanceof 也是如此,这有点相同。 如果 null 是一种 O
我很难理解 Object.getPrototypeOf(o)。我正在下面的代码中使用该方法。 var obj0 = {x: 10}; var obj1 = Object.create(null, {
我正在尝试设置一个对象的原型(prototype)。 但是,有时我想设置/获取字符串的原型(prototype)。然而,令人惊讶的是,当我调用时出现错误: var foo = 'baz'; Objec
我有一个 Angular 7 应用程序,当我在 IE11 中运行它时,我收到错误消息“Object.getPrototypeOf: 'this' is not an Object”。只有当我使用 --
Javascript 代理对象的一个应用是通过将数据作为数组的数组以及列出字段名称和每个字段索引的对象(即字段映射)通过网络发送来减少网络流量。 (而不是在每个对象中重复属性名称的对象数组)。 乍
我有这个原型(prototype)继承链: function Class1() {}; Class1.prototype.name = 'Main Class'; function Class2()
我知道后者是非标准的。但是 Object.getPrototypeOf 和 __proto__ 之间有区别吗?我正在研究 javascript 中的原型(prototype)链是如何工作的,并希望弄清
var protoRabbit = {size: "small"}; var fastRabbit = Object.create(protoRabbit); console.log(Object.g
我只是想知道替换 __proto__ 的主要原因是什么功能 getPrototypeOf/setPrototypeOf ? 提前致谢 最佳答案 MDN explains it pretty well.
我是一名优秀的程序员,十分优秀!