有没有办法检查二维数组的第一个维度值是否存在,例如
var groups = [][10];
// so now if "Student" exists in the first dimension I want to increment the second dimension
//if student is already added, increment it
groups["Student"] = groups["Students"] + 1;
// else
groups.push(["Student",0]);
答案 0 :(得分:0)
你可以这样做:
if (typeof groups["Student"] != 'undefined') {
groups["Student"] += 1;
}
else {
groups["Student"] = 0;
}
答案 1 :(得分:0)
您提供的示例似乎是错误的。
首先,将对所有2D数组进行实例化,例如:
var items = [[1,2],[3,4],[5,6]];
alert(items[0][0]); // 1
请参阅:How can I create a two dimensional array in JavaScript?
其次,您无法使用密钥访问数组。您只是在数组对象中创建属性。所以:
groups['Student'] === groups.Student // true
如果您采用这种方法,则必须考虑以下因素:
groups['Student'] = undefined; // Your dimension is created
groups.hasOwnProperty('Student'); // true
typeof groups['Student'] == 'undefined' // true
考虑仅使用数组或仅使用对象可能是个好主意。