我有一个如下所示的数组:
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']
?
}
我该怎么做?
答案 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]]);
}
}
答案 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 );