循环遍历数组并作为对输出(每个第二个元素的分隔符)

mow*_*gli 7 javascript arrays foreach jquery

我有一个匿名元素的数组.元素通过php添加到数组中,如下所示:

$playlist = array();

while (databaseloop) {
  $playlist[] = $a_title;
  $playlist[] = $a_length;
}

echo json_encode(array('playlist'=>$playlist));
Run Code Online (Sandbox Code Playgroud)

所以数组变成:

["Hello.mp3", "00:00:14", "Byebye.mp3", "00:00:30", "Whatsup.mp3", "00:00:07", "Goodnight.mp3", "00:00:19"] and so on
Run Code Online (Sandbox Code Playgroud)

然后我用ajax post在jquery中检索这个数组.一切正常.

现在,我正在寻找一种在javascript/jquery中将所有数组元素作为对处理/输出的方法.为每个第二个元素"做点什么".像这样:

foreach (two_elements_in_array) {
  // output track name
  // output track time
  // output some divider
}
Run Code Online (Sandbox Code Playgroud)

如何才能做到这一点?

Vis*_*ioN 6

好吧,也许这是最基本的解决方案:

for (var i = 0; i < arr.length; i += 2) {
    var title = arr[i];
    var len = arr[i+1];
}
Run Code Online (Sandbox Code Playgroud)

不过,我建议您安排$playlist如下:

while (databaseloop) {
    $playlist[] = array(
        "title" => $a_title,
        "length" => $a_length
    );
}
Run Code Online (Sandbox Code Playgroud)

然后,只需使用以下内容即可轻松迭代元素:

for (var i = 0; i < arr.length; i++) {
    var title = arr[i]['title'];
    var len = arr[i]['length'];
}
Run Code Online (Sandbox Code Playgroud)