使用 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]);
}
不要对数组使用 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]);
});
用于数组时,回调的第一个参数是索引,第二个参数是数组元素。
它还会创建一个闭包,这在处理循环内的异步代码时非常有用
我有一个 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]);
}
不要对数组使用 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]);
});
用于数组时,回调的第一个参数是索引,第二个参数是数组元素。
它还会创建一个闭包,这在处理循环内的异步代码时非常有用