在 JavaScript 中数组是用什么数据结构实现的?

我们正在学习计算机科学中的数组以及它们如何占用连续范围的内存空间。

在纯数组中,您不能在不移动其他元素的情况下添加和删除元素。

所以当我这样做时:

const arr = ['a', 'b', 'd'];
arr.splice(2, 0, 'c'); // arr is now ['a', 'b', 'c', 'd']

我没有执行数组操作,数组必须以其他方式在 JavaScript 中实现?

也许是一个链表?

我不是在要求规范,只是在浏览器或 Node 中语言的典型实现中,他们可能使用什么?

这个10岁以上的Q/A触及了主题但没有回答,所以请不要标记为重复。

浏览器之间的实际底层表示可能会有所不同(也可能不会)。

最有可能使用的底层数据结构是什么?


皈依舞
浏览 251回答 1
1回答

动漫人物

该数组不仅仅以一种方式实现。这取决于您放入其中的内容、数字、其他数组或对象等。JavaScript 引擎然后在运行时决定如何实现它。最常见的两种是 C++ 数组和链表。请参阅此处了解更多信息。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript