这在JavaScript中是什么类型的数组?

时间:2013-07-17 19:57:29

标签: javascript

我有一个如下所示的数组:

var locationsArray = [['title1','description1','12'],['title2','description2','7'],['title3','description3','57']];

我无法弄清楚这是什么类型的数组。更重要的是,我将不得不根据那里的信息创建一个。因此,如果最后的数字大于10,则以相同的样式创建一个全新的数组,但仅限于标题和描述。

var newArray = [];
// just a guess
if(locationsArray[0,2]>10){
   //add to my newArray like this : ['title1','description1'],['title3','description3']
   ? 
}

我该怎么做?

5 个答案:

答案 0 :(得分:3)

尝试如下,

var newArray = [];

for (var i = 0; i < locationsArray.length; i++) {
   if (parseInt(locationsArray[i][2], 10) > 10) {
      newArray.push([locationsArray[i][0], locationsArray[i][1]]);
   }
}

DEMO: http://jsfiddle.net/cT6NV/

答案 1 :(得分:1)

这是一个数组数组,也称为二维数组。每个索引都包含自己的数组,该数组具有自己的索引集。

例如,如果我检索locationsArray[0],我会['title1','description1','12']。如果我需要从第一个数组中获取标题,我可以locationsArray[0][0]访问它以获取'title1'

完成你的例子:

var newArray = [];
// just a guess
if(locationsArray[0][2]>10){
   newArray.push( [ locationsArray[0][0], locationsArray[0][1] ] );
}

把它扔进一个循环中,你很高兴。

答案 2 :(得分:0)

这是一组字符串数组。

每次都有:[],它定义一个数组,内容可以是任何内容(例如你的情况下的另一个数组)。

因此,如果我们采用以下示例:

var myArray = ["string", "string2", ["string3-1", "string3-2"]];

价值观如下:

myArray[0] == "string"
myArray[1] == "string2"
myArray[2][0] == "string3-1"
myArray[2][1] == "string3-2"

RAM可以处理多少级别的深度。

答案 3 :(得分:0)

locationsArray是一个数组数组。第一个[]运算符索引到主数组(例如locationsArray [0] = ['title1','description1','12']),而第二个[]操作索引到第一个索引指向的数组(例如locationsArray) [0] [1] ='description1')。

你的newArray看起来需要是同一件事。

答案 4 :(得分:0)

这是一个数组数组。

var newArray = [];
var locationsArray = [
    ['title1','description1','12'],
    ['title2','description2','7'],
    ['title3','description3','57']
];

for(i = 0; i < locationsArray.length; i++) {
    if (locationsArray[i][2] > 10) {
        newArray .push([locationsArray[i][0], locationsArray[i][1]]);
    }
}

console.log(newArray );