制作数组jquery / js

时间:2015-08-17 08:58:35

标签: javascript jquery arrays

我想制作一个这样的数组。 (警告它给对象)

	<div class="author_">Lord Byron</div>

发件人:

var playlist = [{"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"}];

现在新的数组var playlist = []; $.ajax({ url: 'url.php', data: { album_name: album_name }, type: 'POST', success: function( data ) { var data_array = JSON.parse(data); for( var i=0; i<data_array.length; i++ ) { var value = data_array[i].split('::'); playlist.push('{"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"},'); // putting the same thing just for testing. } alert(playlist); } }); 似乎不适合我。我想我创建像上面这样的数组的方式有些不对。

5 个答案:

答案 0 :(得分:3)

你需要推送对象而不是对象字符串:

playlist.push({"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"});
//------------^---remove the single quote.

答案 1 :(得分:1)

试试这个

&#13;
&#13;
var playlist =[{"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"}];

alert(JSON.stringify(playlist));
&#13;
&#13;
&#13;

答案 2 :(得分:1)

  • 正如@Jai所说,你需要推送一个对象:playlist.push({"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"});

  • JavaScript中的数组是对象。

  • 您最好使用控制台记录或调试您的JavaScript。

  • 在这个fiddle中你可以看到 创建数组并将对象推送到它但是它 仍记录为对象。

  • 由于您使用的是jQuery,因此它有一个方法isArray()来确定是否为 什么是数组或不是。

答案 3 :(得分:1)

使用jQuery.map()制作数组。

playlist = $.map(data_array, function(val, i){
      splitArr = val.split('::')
      return {
        'title':splitArr[0],
        'mp3':splitArr[1]
      }
})

答案 4 :(得分:0)

或者您可以尝试这样

&#13;
&#13;
var playlist = [];
$.ajax({
    url: 'url.php',
    data: {
        album_name: album_name
    },
    type: 'POST',
    success: function( data ) {
        var data_array = JSON.parse(data);
        for( var i=0; i<data_array.length; i++ ) {
            var value = data_array[i].split('::');
            var ArrObj = '{"title":"Kalimba","mp3":"http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"},'; 
            playlist.push(ArrObj); 
        }
        alert(playlist);
    }
});
&#13;
&#13;
&#13;