var my = {};
my["1"] = "tom";
my["2"] = "tony";
document.writeln(my["2"]);
一个简单的问题,{} 叫什么?我知道 [] 称为 arraylist,我可以对其执行 my.indexOf() 等操作,但这不适用于 {}。
我在哪里可以找到我可以使用 list with {}
执行的操作列表最佳答案
{}
被称为一个对象,在您的声明中:
var my = {};
您只是在创建一个空对象,然后您可以向其添加属性。
数组和对象都可以使用[x]
语法访问。数组最适合用于数字索引的顺序访问,如:
x[1]
x[2]
对象最适合用于非顺序字符串索引的访问,例如:
my["autoSaveTime"]
my.autoSaveTime
有些人还将对象视为哈希表或关联数组,因为它们通常可以提供与其他编程结构类似的目的。
根据您在评论中提出的问题,数组具有 .length
等属性以及 .push()
和 .pop()
等方法>。对象没有。 MDN 是一个很好的引用信息来源。这是 MDN page on array methods这是一个good overview on working with objects .
对象没有这些方法。由于对象没有顺序,您只需分配给它们或读取它们或迭代它们或删除属性,因为不需要像数组那样尝试更改它们的顺序。
var x = my.autoSaveTime;
my.autoSaveTime = 200;
for (var key in my) {
var item = my[key];
// do something with item or key here
}
理解一个棘手的事情是,数组实际上是从对象派生的,并添加了额外的数组功能。也就是说,数组还可以像对象一样包含任意字符串命名的属性,并且具有对象所具有的所有通用方法。对象没有数组功能和方法。因此,数组是对象的超集。
关于javascript - javascript 中带有 {} 的列表叫什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10177633/