如何从javascript json获取索引0和1

时间:2016-12-19 12:01:05

标签: javascript json

我有json格式,我需要在循环中获取第一个索引值(音频0)和第二个索引值(视频1),所以我无法弄清楚如何使用索引0和1从json数组获取.. ..我使用这个jsfiddle得到错误...

 var info = '{"streams": [{"index": 0,"codec_name": "aac","codec_long_name": "AAC (Advanced Audio Coding)"}, {"index": "1","codec_name": "h264","codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG4 part 10"}]}';

 console.log("vcodec: "+info.streams[0].codec_name);
 console.log("vcodec: "+info.streams[1].codec_name);

JsFiddle

5 个答案:

答案 0 :(得分:4)



var info = '{"streams": [{"index": 0,"codec_name": "aac","codec_long_name": "AAC (Advanced Audio Coding)"}, {"index": "1","codec_name": "h264","codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG4 part 10"}]}';

var parsedInfo = JSON.parse(info);

console.log("acodec:", parsedInfo.streams[0].codec_name);
console.log("vcodec:", parsedInfo.streams[1].codec_name);




答案 1 :(得分:2)

在你的小提琴中,infos是一个字符串。你必须使用

JSON.parse(string)

实际获取JavaScript对象并使用它。更具体一点:

const infoString = '{"streams": []}'
const infoObject = JSON.parse(infoString)

console.log(infoObject.string)

答案 2 :(得分:1)

您可以删除双引号使其成为json并使用以下代码,它将完美地工作

var info = {"streams": 
            [
              {"index": 0,"codec_name": "aac","codec_long_name": "AAC (Advanced Audio Coding)"}, 
             {"index": "1","codec_name": "h264","codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG4 part 10"}
            ]
           };

console.log(""+info.streams[0].codec_name);
console.log(""+info.streams[1].codec_name);

答案 3 :(得分:1)

在继续之前,你必须解析json字符串。

var info = YOUR_JSON ;
var parsedInfo = JSON.parse(info);
var codecName = parsedInfo.streams[0].codec_name;

答案 4 :(得分:1)

首先解析json字符串。您当前正在使用无法在javascript中编入索引的字符串。请找到附带的代码。



<!DOCTYPE html>
<html>

<script>
    var info = '{"streams": [{"index": 0,"codec_name": "aac","codec_long_name": "AAC (Advanced Audio Coding)"}, {"index": "1","codec_name": "h264","codec_long_name": "H.264 / AVC / MPEG-4 AVC / MPEG4 part 10"}]}';
    info = JSON.parse(info);
    console.log("vcodec: " + info.streams[0].codec_name);
    console.log("vcodec: " + info.streams[1].codec_name);
</script>

<body>
</body>

</html>
&#13;
&#13;
&#13;