可能重复:
Javascript 中的对象与数组的键/值对
我在 JavaScript 中有一个变量,我像hash一样使用它。我可以像这样初始化它:
var selected = [];
或者
var selected = {};
它做同样的事情。例如,我正在使用它:
selected["one"] = 1;
if (selected["one"] == 1) console.log("one is selected");
// result: one is selected
if (selected["two"] != 1) console.log("two is not selected");
// result: two is not selected
selected["one"] = 0;
if (selected["one"] != 1) console.log("one is no longer selected");
// result: one is no longer selected
真的有区别吗?一个是对象,另一个是数组吗?如果是这样,我应该什么时候遇到问题。即,两者在用法上有什么区别,你为什么要选择一个而不是另一个?