将json数据转换为javascript数组

时间:2017-04-18 14:49:57

标签: javascript jquery arrays json ajax

我想转换json数据并将返回值放入javascript数组中。 我使用jquery版本1.9.1

jquery的:

$('#searchinput').on('keyup', function(){
      $value2=$(this).val();
      $.ajax({
        type: 'get',
        url: '{{URL::to('search')}}',
        data: {'thesearch':decodeURIComponent($value2)},
        success:function(game){              
          alert(JSON.stringify(game));
        }
      });
    });

结果如下:

[{"name":"First name"},{"name":"Second Name"}]

我想要的是将值存储到javascript数组中,如下所示:

var namearray = ['First name', 'Second Name'];

怎么做?

3 个答案:

答案 0 :(得分:6)

使用map功能:

var namearray = arr.map(x => x.name);

链接:

Array.prototype.map

答案 1 :(得分:4)

您可以使用jquery map函数

$.map([{"name":"First name"},{"name":"Second Name"}], function(val, i){return val.name})

详细了解http://api.jquery.com/jquery.map/

答案 2 :(得分:2)

您是否尝试使用map功能?您可以执行以下操作:

var nameArray = game.map(name => name["name"]);

所以你的整个代码变成了:

$('#searchinput').on('keyup', function(){
    $value2=$(this).val();
    $.ajax({
      type: 'get',
      url: '{{URL::to('search')}}',
      data: {'thesearch':decodeURIComponent($value2)},
      success:function(game){        
         var nameArray = game.map(name => name["name"]);
    }});
});

希望这会有所帮助:)