簡體   English   中英

使用jquery.each無法遍歷關聯數組

[英]Cant iterate through an associative array using jquery.each

好吧,我之前使用過jquery.each ,但是今天似乎是我的糟糕日子,因為我所做的一切都出了問題。 我使用以下代碼從數組中獲取值,但得到了

TypeError:無效的“ in”操作數

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] => ◯
        )

)

每個僅適用於jQuery元素,但響應未與jQuery選擇器綁定,因此僅使用像這樣的javascript循環

如果響應為數組,則可以使用es6的map函數或foreachfunction

嘗試:

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

試試看

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM