【发布时间】:2019-03-11 03:54:53
【问题描述】:
在将数组存储在 getJSON 之外的变量中后,我无法从数组中检索值。
我的 JSON 响应是:
[
{
"Book_ID": "1",
"Book_Name": "Computer Architecture",
"Category": "Computers",
"Price": "125.60"
},
{
"Book_ID": "2",
"Book_Name": "Asp.Net 4 Blue Book",
"Category": "Programming",
"Price": "56.00"
},
{
"Book_ID": "3",
"Book_Name": "Popular Science",
"Category": "Science",
"Price": "210.40"
}
]
使用 jQuery $.getJson 函数:
var booksList = [];
$.getJSON( "books.json", function( data ) {
$.each(data, function (index, value) {
booksList.push(value);
});
});
当我尝试获取 BOOK ID 时,
console.log(booksList[0].BOOK_ID);
我收到以下错误:
未捕获的类型错误:无法读取未定义的属性“Book_ID”
但是当我记录完整的数组时,
console.log(booksList);
【问题讨论】:
-
显示你正在做的代码
console.log(booksList[0].BOOK_ID); -
还有
BOOK_ID和Book_ID不一样 -
你可能在
getJSON回调之外访问console.log(booksList[0].BOOK_ID);。 -
你可以试试 console.log(data)。我需要查看您的数据
-
你可以简单地使用 booksList=data 不需要迭代
标签: javascript jquery arrays json array-push