Javascript:检查二维数组是否包含第一维中的元素

时间:2016-06-17 12:49:00

标签: javascript arrays

有没有办法检查二维数组的第一个维度值是否存在,例如

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]);

2 个答案:

答案 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

考虑仅使用数组或仅使用对象可能是个好主意。