在JavaScript中,这是一个什么样的数组

What kind of array is this in JavaScript?

本文关键字:一个 什么样 数组 JavaScript      更新时间:2023-09-26

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

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']
   ? 
}

我该怎么做?

试试下面的

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

演示:http://jsfiddle.net/cT6NV/

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

例如,如果我检索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] ] );
}

把它绕一圈,你就可以走了。

它是字符串数组的数组。

每次出现这样的情况:[],它都定义了一个数组,内容可以是任何东西(在您的情况下,比如另一个数组)。

因此,如果我们举以下例子:

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

数值如下:

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

内存可以处理多少深度级别。

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

你的newArray看起来应该是一样的。

这是一个数组的数组。

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