我可以手工解析这个问题。我对在JavaScript中使用它的惯用方法感兴趣。
令我困惑的是,我看到的所有示例都有列的键/值名称。而且,字段由{}
分隔,而不是[]
:
[
["MMM",0.0371],
["ADBE",0.0413]
]
答案 0 :(得分:1)
如果事实。此示例是Javascript
中的数组数组。
<!DOCTYPE html>
<html>
<body>
<p>Access an array value of a JSON object.</p>
<p id="demo"></p>
<script>
var myObj, x;
myObj = [
["MMM",0.0371],
["ADBE",0.0413]
]
;
x = myObj[0][0];
document.getElementById("demo").innerHTML = x;
</script>
</body>
</html>
&#13;
答案 1 :(得分:1)
您可以使用forEach方法
var arr = [
["MMM",0.0371],
["ADBE",0.0413]
]
arr.forEach(function(v1){
v1.forEach(function(v2){
console.log(v2)
})
})
答案 2 :(得分:1)
您可以使用解构赋值将每个数组迭代为键值对。如果数据实际上是JSON
,而不是首先在JSON.parse()
上调用JSON
的JavaScript对象
[
["MMM", 0.0371],
["ADBE", 0.0413]
]
.forEach(([key, value]) => {
console.log(key, value)
})
JSON.parse('[["MMM", 0.0371],["ADBE", 0.0413]]')
.forEach(([key, value]) => {
console.log(key, value)
})
答案 3 :(得分:0)
使用ES5这可能是您浏览器不一致的最佳选择,您可以使用for循环或foreach。还可以根据您的目的进行映射,过滤,缩小。
小提琴
var arr = [
["MMM",0.0371],
["ADBE",0.0413]
]
arr.forEach(function (el) {
console.log(el[0])
console.log(el[1])
})
// This will convert it to key value pairs
var keyvaluearr = arr.map(function (el) {
return {
name: el[0],
value: el[1]
}
})
console.log(keyvaluearr)
for(var i = 0; i < arr.length; i++) {
var el = arr[i]
console.log(el[0])
console.log(el[1])
}