使用 JQuery 解析 JSON 嵌套数组

Parsing JSON nested array using JQuery

我有一个 API returns 以下 JSON 值作为字符串。

"[
    ["West Baton Rouge test hello world", "1"],
    ["LSU Parking \u0026 Transportation Services", "2"],
    ["demokljafsk", "3"],
    ["latest", "19"],
    ["Hello check", "20"],
    ["Dinesh Devkota", "21"],
    ["World", "22"],
    ["altered value.", "23"],
    ["Dinesh Devkota", "24"],
    ["Dinesh Devkota", "25"],
    ["Dinesh Devkota", "26"],
    ["Dinesh Devkota", "27"],
    ["Dinesh Devkota", "28"],
    ["Rocking Client", "29"],
    ["West Baton Rouge", "30"],
    ["Test Client", "31"]
]"

我很难尝试使用 JQuery 获取每个数组的第一个值并使用以下代码将其登录到控制台。

  $.get("/controller", function (data) {
        console.log("Data Loaded: " + data);
        for (var eachdata in data) {
            console.log(eachdata[0]);
        }
   });

我是 JQUERY 的新手,不知道什么是正确的方法。

$.get("/controller", function (data) {
    console.log("Data Loaded: " + data);
    for (var eachdata in data) {
        console.log(data[eachdata][0]);
    }
});

问题是 for-in returns 键,而不是值。

你可以这样做:

for (var i=0; i<data.length; i++) {
    console.log(data[i][0]);
}

示例:http://jsfiddle.net/5db2h32g/1/

不要对数组使用 for..in

var data = [
    ["West Baton Rouge test hello world", "1"],
    ["LSU Parking \u0026 Transportation Services", "2"],
    ["demokljafsk", "3"],
    ["latest", "19"],
    ["Hello check", "20"],
    ["Dinesh Devkota", "21"],
    ["World", "22"],
    ["altered value.", "23"],
    ["Dinesh Devkota", "24"],
    ["Dinesh Devkota", "25"],
    ["Dinesh Devkota", "26"],
    ["Dinesh Devkota", "27"],
    ["Dinesh Devkota", "28"],
    ["Rocking Client", "29"],
    ["West Baton Rouge", "30"],
    ["Test Client", "31"]
];

for (var i = 0, len = data.length; i < len; i++) {
   console.log(data[i][0]);
}

// with jQuery
$.each(data, function (index, value) {
   console.log(value[0]);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

由于您正在使用 jQuery $.each 是一个非常有用的实用程序:

$.each( data, function( arrayIndex, arrayElement) {
    console.log(arrayElement[0]);
});

用于数组时,回调的第一个参数是索引,第二个参数是数组元素。

它还会创建一个闭包,这在处理循环内的异步代码时非常有用

引用jQuery.each() docs