簡體   English   中英

如何從Javascript中的數組數組中提取值?

[英]How to extract values from an array of arrays in Javascript?

我有一個變量,如下所示:

var dataset = {
"towns": [
    ["Aladağ", "Adana", [35.4,37.5], [0]],
    ["Ceyhan", "Adana", [35.8,37], [0]],
    ["Feke", "Adana", [35.9,37.8], [0]]
    ]
};

該變量中包含許多城鎮數據。 如何有效地從數據中提取第三個元素? I,E,你會...低於?

var myArray = ...
//myArray == [35.4,35.8,35.9] for the given data 

如果要將兩個值都存儲在數組中怎么辦? 那是

var myArray = ...
//myArray == [[35.4,37.5], [35.8,37], [35.9,37.8]] for the given data 

我是Java的新手。 我希望有一種不使用for循環的方法。

在較新的瀏覽器上,可以使用mapforEach ,這樣可以避免使用for循環。

var myArray = dataset.towns.map(function(town){
  return town[2];
});
// myArray == [[35.4,37.5], [35.8,37], [35.9,37.8]]

但是for循環更兼容。

var myArray = [];
for(var i = 0, len = dataset.towns.length; i < len; i++){
  myArray.push(dataset.towns[i][2];
}

不可能沒有循環:

var myArray = [];
for (var i = 0; i < dataset.towns.length; i++) {
    myArray.push(dataset.towns[i][2][0]);
}
// at this stage myArray = [35.4, 35.8, 35.9]

如果要將兩個值都存儲在數組中怎么辦?

類似地,您只需添加整個數組,而不僅是第一個元素:

var myArray = [];
for (var i = 0; i < dataset.towns.length; i++) {
    myArray.push(dataset.towns[i][2]);
}
// at this stage myArray = [[35.4,37.5], [35.8,37], [35.9,37.8]]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM