使用Javascript输出Json数组
我对Javascript和Json非常陌生,需要以下方面的帮助。这是一些json数据:使用Javascript输出Json数组,javascript,arrays,json,jquery,Javascript,Arrays,Json,Jquery,我对Javascript和Json非常陌生,需要以下方面的帮助。这是一些json数据: "genres": [ { "id": 28, "name": "Action" }, { "id": 18, "name": "Drama" }, { "id": 14, "name": "Fantasy" }, { "id": 36, "name": "History" } ], 现在我想输出所有类型的名称 我正在使用j
"genres": [
{
"id": 28,
"name": "Action"
},
{
"id": 18,
"name": "Drama"
},
{
"id": 14,
"name": "Fantasy"
},
{
"id": 36,
"name": "History"
}
],
现在我想输出所有类型的名称
我正在使用jquery mobile和ajax检索json数据。在我的函数中,它看起来像这样:
var genres = results.genres[0].name;
$('#tmdbInfo2').html('<br>Genres: ' +genres);
$.each(results.genres, function (currentIndex, currentElem) {
console.log( currentElem.name );
});
var result = "";
for (i in genres.name) {
result += genres.name[i];
}
console.log(result);
var-genres=results.genres[0]。名称;
$('#tmdbInfo2').html('
类型:'+类型);
在这个例子中,我们将展示类型的第一个元素(动作),但不是全部。
输出应该是:动作、戏剧、幻想、历史。
有时体裁的元素数量会有所不同
请帮帮我,这让我很困惑
这就是您在数组元素上迭代的方式,使用for
循环(,如果您受到诱惑的话)
另一种迭代方式:
results.genres.forEach(function(genre) {
console.log(genre.name);
});
对于您正在尝试做的事情:
$('#tmdbInfo2').html(
'Genres: ' + results.genres.map(function(genre) {
return genre.name;
}).join(', ')
);
您可以使用
结果=“{”流派“:[{”id“:28,“姓名“:”动作“},{”id“:18,“姓名“:”戏剧“},{”id“:14,“姓名“:”幻想“},{”id“:36,“姓名“:”历史“}”);
results=JSON.parse(results);
对于($i在results.tyres中){
console.log(results.genres[$i].name);
}
JSON.parse方法将字符串解析为JSON,可以选择转换解析生成的值,您可以从类似节点的数组中获取值。
当您对($i in results.genres)使用时,
您不需要为get all array/object元素设置大小限制
组元素需要介于{“类型”之间:[{…}]}将读取您的JSON。您可以通过使用for in循环访问数组值,如下所示:
var genres = results.genres[0].name;
$('#tmdbInfo2').html('<br>Genres: ' +genres);
$.each(results.genres, function (currentIndex, currentElem) {
console.log( currentElem.name );
});
var result = "";
for (i in genres.name) {
result += genres.name[i];
}
console.log(result);
很抱歉这么说,但你应该在谷歌上搜索一下。或者打开一个关于Javascript数组的基本教程。相信我,我已经做了。我不是程序员。我找到了很多例子,但无法将其转化为我的问题。没有人天生就是程序员。如果你想做编程,那么除了学习,你没有别的机会了。谢谢你。但是,如何将结果保存在变量中并用html输出每个项目呢?我知道这是最基本的:在
.join()
,.map()
返回jQuery包装的数组之前,pYou还需要一个.get()
。另外,我发现您的示例对于初学者来说非常混乱,但它很好:)。@bažmegakap:Array.prototype.map
为什么会返回jQuery包装的数组?这正是我需要的!你帮我节省了很多工作时间,而我现在没有。伟大的社区@瑞文:你可以接受他的答案,在答案左边打勾。请这样做。什么是console.log?我会试着更进一步。谢谢@RaveN不仅仅是程序员能够使用Googleconsole.log()
将值打印到浏览器的控制台。当使用$i
调用results.genres[$i].name
时,函数get id元素从0开始。如果只想获取第一个元素,请设置此results.genres[0]。name
。Example JAVASCRIP Example JQUERY