迭代数组vs对象

jas*_*son 0 javascript arrays object

哪一个更快:迭代一个数组或一个对象.当我需要执行诸如从中间删除任何元素的操作时会发生什么?

var a = {"A1":1, "B1":2, "C1":3};
Run Code Online (Sandbox Code Playgroud)

要么

var a = ["A1", "B1", "C1"];
Run Code Online (Sandbox Code Playgroud)

Aln*_*tak 5

迭代数组应该比迭代对象更快,但它取决于:

  1. 对象/数组的大小
  2. 你的钥匙是否有用
  3. 各种其他优化废话

在较旧的浏览器中,从数组中删除元素曾经非常昂贵(因为它需要在每个后续元素上更改密钥),但在现代浏览器上这不是一个问题.

说真的,只需使用最适合您项目的表示,然后担心如果出现问题就进行优化.