javascript - JavaScript 中的类型化数组不是数组

标签 javascript arrays

var a = Int32Array(10);
console.log(Array.isArray(a)); // prints false to the console (Firefox)

类型化 JavaScript 数组不是数组是否有原因,或者这是一个需要报告的错误?

最佳答案

不,typed arrays不是数组,不需要报告。

它们是一组非常独特的对象,具有不同的功能。在规范中,它们是 described作为对象

present an array-like view of an underlying binary data buffer

不要混淆它们的一个很好的理由:它们甚至不提供数组上的函数,例如 splice

它也不遵循 Array.isArray 的规范,因为它不是 "Array object"可以通过使用括号表示法在超出范围的索引处设置值并检查长度是否未更改来验证。

关于javascript - JavaScript 中的类型化数组不是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30038046/

相关文章:

javascript - 获取 .attrs 方法内 d3 中文本节点的宽度

javascript - 如何检查 Node.js 中是否设置了环境变量?

javascript - 如何在 JavaScript 中增加包含前导零的字符串?

javascript - JS,随机高度

c++ - 计算两个数组中匹配元素的个数 C++

c++ - C++ 中的简单 'database'

javascript - innerHTML 自动对 HTML 字符串的部分进行转义?

ios - 将数据提供给具有多个标签的自定义 UITableViewCell 的最佳方法是什么 - Swift

arrays - 用另一个数组的元素替换数组中的 nils 的最佳方法

c - 函数参数中的 int * 与 int [] 与 int (*)[] 。我应该使用哪一个?