gpt4 book ai didi

javascript - Object.getPrototypeOf 不起作用?

转载 作者:行者123 更新时间:2023-11-28 16:20:25 27 4
gpt4 key购买 nike

我正在阅读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/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com