无法使用jquery.each迭代关联数组

时间:2017-01-22 15:31:56

标签: javascript jquery arrays each

好吧,我之前使用过jquery.each,但今天似乎是我糟糕的一天,因为无论我做什么都是错误的。我使用以下方法从数组中获取值,但我得到了

  

TypeError:'在'操作数a'中无效'

JS

var updateBoard = function() {
        $.ajax({
            type: "POST",
            url: "engine/main.php",
            data: {code: 2},
            success: function(response) {
                $.each(response, function(i, val) {
                    console.log(i);
                });
                setTimeout(updateBoard, 2500);
            }
        });
    };
    updateBoard();

我的成功功能的回应

Array
(
    [0] => Array
        (
            [cell] => a2
            [sign] => ◯
        )

    [1] => Array
        (
            [cell] => b2
            [sign] => ◯
        )

)

2 个答案:

答案 0 :(得分:0)

每个只在jQuery元素上工作,但响应不与jQuery选择器绑定,所以只需使用javascript循环

如果您的回答是数组

,您可以使用es6或foreachfunction的map函数

尝试:

response.map(function(obj){
  console.log(obj)
})

response.forEach(function(obj){
  console.log(obj)
})

MDN来源

的foreach

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

地图

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

答案 1 :(得分:0)

尝试

var obj = JSON.parse(response);
$(obj).each(function(i, val) {
  console.log(val.cell);
  console.log(val.sign);
});