var my = {};
my["1"] = "tom";
my["2"] = "tony";
document.writeln(my["2"]);
Run Code Online (Sandbox Code Playgroud)
一个简单的问题,{}被称为什么?我知道[]被称为arraylist,我可以对其执行my.indexOf()等,但这不适用于{}.
我在哪里可以找到我可以使用{}列表执行的操作列表
{} 被称为对象并在您的声明中:
var my = {};
Run Code Online (Sandbox Code Playgroud)
您只是创建一个空对象,然后可以向其添加属性.
可以使用[x]语法访问数组和对象.数组最适合使用数字索引进行顺序访问,如下所示:
x[1]
x[2]
Run Code Online (Sandbox Code Playgroud)
对象最适合使用非顺序字符串索引进行访问,例如:
my["autoSaveTime"]
my.autoSaveTime
Run Code Online (Sandbox Code Playgroud)
有些人还将对象视为哈希表或关联数组,因为它们通常可以用于与其他编程结构类似的目的.
按照您在您的评论提出的问题,数组有样性质.length等方法.push()和.pop().物体没有.MDN是关于此类事物的参考信息的良好来源.这是关于数组方法的MDN页面,这里是关于使用对象的一个很好的概述.
对象没有这些方法.由于对象没有对它们的命令,您只需分配给它们或读取它们或迭代它们或删除属性,因为不需要尝试更改它们与数组的顺序.
var x = my.autoSaveTime;
my.autoSaveTime = 200;
for (var key in my) {
var item = my[key];
// do something with item or key here
}
Run Code Online (Sandbox Code Playgroud)
要理解的一个棘手的事情是,Array实际上是从Object派生的,并添加了额外的数组功能.也就是说,数组也可以包含任意字符串命名属性(如对象),并具有对象具有的所有通用方法.对象没有数组功能和方法.因此,数组是对象的超集.
| 归档时间: |
|
| 查看次数: |
133 次 |
| 最近记录: |