[英]Initializing a javascript array
还有另一种(更漂亮的)初始化这个Javascript数组的方法吗?
var counter = [];
counter["A"] = 0;
counter["B"] = 0;
counter["C"] = 0;
counter["D"] = 0;
counter["E"] = 0;
counter["F"] = 0;
counter["G"] = 0;
答:这不起作用,或者至少不是你希望它的方式。 当您最有可能寻找的是哈希时,您初始化了一个数组。 除非您将第一行更改为counter = {};
否则counter
仍会返回[]
并且长度为0
counter = {};
。 属性将存在,但使用[]
来存储键值对是一个令人困惑的用法。
B:
var counter = {A: 0, B: 0, C: 0, D: 0, E: 0, F: 0, G: 0};
使用对象文字而不是数组,如下所示:
var counter = {A:0,B:0,C:0}; // and so on
然后使用点表示法访问属性:
counter.A; // 0
...或方括号表示法:
counter['A']; // 0
您将主要使用数组属性,尽管可以像往常一样添加非数字属性。
var counter={A:0,B:0,C:0,D:0,E:0,F:0,G:0};
使用对象更有意义:
var counter = {
A: 0,
B: 0,
C: 0,
D: 0,
E: 0,
F: 0,
G: 0
};
如果你真的想要一个充满零的数组,那么Array(5).fill(0)
就可以了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.