itsource

jQuery looping .each() JSON 키/값이 작동하지 않습니다.

mycopycode 2023. 3. 18. 08:37
반응형

jQuery looping .each() JSON 키/값이 작동하지 않습니다.

jQuery . each() 함수로 JSON의 키/값을 루프하는 데 문제가 있습니다.

처음에는 다음과 같은 JSON이 있습니다.

json = {"aaa":[
              {"id":"1","data":"aaa1data"}
              ,{"id":"2","data":"aaa2data"}
              ],
        "bbb":[
              {"id":"3","data":"bbb1data"}
              ]
       }

또한 JSON 내의 모든 키/값 요소(aaa 및 bbb)를 루프하고 다시 루프하기 위해 내부 JSON 어레이를 검색하려고 합니다.

$(json).each(function(index,data)
{
    var zzz = data;
    $(zzz).each(function(index,data))
    {
       //some other stuff
    }
}

그러나 첫 번째 .each() 함수는 json 전체를 하나의 구조로 간주하고 요소의 키로 루프하지 않는다는 것을 알게 되었습니다..each() 함수에서 받은 데이터 파라미터는 항상 원래 json 자체입니다.aaa와 bbb의 내부 JSON 배열을 가리킨다는 참조는 결코 얻을 수 없습니다.

여기서 문제가 되는 것은 무엇이며 jQuery에 의한 JSON의 모든 키/값 요소에 대해 어떻게 루프해야 합니까?

jQuery 래퍼 이외의 오브젝트가 있기 때문에 다른 종류의 $.each()를 사용해야 합니다.

$.each(json, function (key, data) {
    console.log(key)
    $.each(data, function (index, data) {
        console.log('index', data)
    })
})

데모: 바이올린

단순한 JSON 오브젝트에서는 jQuery가 필요 없습니다.

for (var i in json) {
   for (var j in json[i]) {
     console.log(json[i][j]);
   }
}

언급URL : https://stackoverflow.com/questions/19969751/jquery-looping-each-json-key-value-not-working

반응형