好的,所以当我尝试使用$ .each来迭代这个JSON时,我遇到了一个问题。我正试图访问帖子信息。
到目前为止,这是我的代码。
var newPosts = <? echo(getPosts($optionsArray)); ?>;
var postJSON = JSON.parse(JSON.stringify(newPosts));
console.log(postJSON);
alert(postJSON);
//Make sure the div is emptied before we append to it
$("#Posts").empty();
//Append new data
$.each(postJSON.posts, function(key, value){
alert(value);
})
控制台日志显示我想要的信息,但是我从警报中得不到任何信息。什么都没弹出来。对此有所了解。
答案 0 :(得分:1)
JSON.parse =转换格式化的JSON字符串并创建一个对象...
JSON.stringify =将JavaScript对象转换为JSON字符串....
所以你把它变成一个字符串然后再变成一个对象。如果要正确打印出字符串,请删除JSON.parse。
它应该是这样的:
var jString = JSON.stringify(newPosts);
alert(jString);
答案 1 :(得分:0)
执行console.dir(postJSON)
以确保JSON具有名为posts
的数组。
如果没有,那么你的答案就是。