Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从JSON文件中获取特定数据?_Javascript_Node.js_Json_Api - Fatal编程技术网

Javascript 如何从JSON文件中获取特定数据?

Javascript 如何从JSON文件中获取特定数据?,javascript,node.js,json,api,Javascript,Node.js,Json,Api,我正在尝试使用电影API制作一个关于电影的web应用程序。然后我复制搜索结果的前两部分并将它们存储在一个变量中;如何从变量中获取特定数据 我认为JSON文件是一个对象,并试图获取特定的数据,但我做不到 这是我存储在变量中的搜索结果的前两部分 var searchResults = { page: 1, total_results: 4109, total_pages: 206, results: [ { original_name:

我正在尝试使用电影API制作一个关于电影的web应用程序。然后我复制搜索结果的前两部分并将它们存储在一个变量中;如何从变量中获取特定数据

我认为JSON文件是一个对象,并试图获取特定的数据,但我做不到

这是我存储在变量中的搜索结果的前两部分

  var searchResults = {
    page: 1,
    total_results: 4109,
    total_pages: 206,
    results: [
      {
        original_name: 'Star',
        id: 68780,
        media_type: 'tv',
        name: 'Star',
        vote_count: 62,
        vote_average: 7.12,
        first_air_date: '2016-12-14',
        popularity: 16.022,
        original_language: 'en',
      },
      {
        original_name: '부암동 복수자들',
        id: 74473,
        media_type: 'tv',
        name: 'Avengers Social Club',
        vote_count: 4,
        vote_average: 9,
        first_air_date: '2017-10-11',
        popularity: 1.668,
        original_language: 'ko',
      }]};
我想在控制台中查看这些电影的名称。如何在控制台中查看这两部电影的名称

我试过这个:

var options = {
    method: 'GET',
    url: 'api.themoviedb.org/3/search/multi',
    qs: {
        include_adult: 'false', page: '1',
        query: 'star', language: 'en-US', api_key: 'I CANT SHOW THIS'
    }, body: '{}'
};
request(options, function (error, response, body) {
    if (error) {
        console.log("ERROR!");
        console.log(error);
    } else {
        if (response.statusCode == 200) {
            var parsedBody = JSON.parse(body); 
            console.log(parsedBody["results"][0].name);
        }
    }
});

如果知道每个JSON响应中返回多少个结果,可以使用结果计数以这种方式循环。对于示例中的两个结果,只要
i<2
,它就会循环:

var搜索结果={
页码:1,
总成绩:4109,
共页:206页,
结果:[
{
原名:“Star”,
id:68780,
媒体类型:“电视”,
名称:'星',
计票:62票,
平均投票数:7.12,
首次发布日期:“2016-12-14”,
人气:16.022,
原文:“en”,
},
{
原名:'부암동 복수자들',
身份证号码:74473,
媒体类型:“电视”,
名称:“复仇者社交俱乐部”,
计票:4票,
平均投票数:9,
首次发布日期:“2017-10-11”,
人气:1.668,
原文:“ko”,
}]};  
对于(变量i=0;i<2;i++){
log(searchResults['results'][i].name);

}
您尝试过什么?发生了什么事?@SLaks var parsedBody=JSON.parse(body);console.log(parsedBody[“results”][0].name);但我没有定义,这应该行得通。什么是
parsedBody
?var选项={method:'GET',url:'',qs:{include_成人:'false',page:'1',query:'star',language:'en-US',api_-key:'I CANT SHOW THIS',body:'{};请求(选项,函数(错误,响应,正文){if(错误){console.log(“错误!”);console.log(错误);}其他{if(响应.statusCode==200){var parsedBody=JSON.parse(正文);console.log(parsedBody[“results”][0].name);})@Güney请记录
parsedBody
,并将其添加到问题中。或者控制台记录
正文
,并将其添加到问题中。