>  기사  >  웹 프론트엔드  >  JQuery $.each는 JavaScript 배열 객체 인스턴스_jquery를 순회합니다.

JQuery $.each는 JavaScript 배열 객체 인스턴스_jquery를 순회합니다.

WBOY
WBOY원래의
2016-05-16 16:38:201247검색

JavaScript 배열 객체를 반복하는 간단한 jQuery 예제를 확인하세요.

var json = [
{"id":"1","tagName":"apple"},
{"id":"2","tagName":"orange"},
{"id":"3","tagName":"banana"},
{"id":"4","tagName":"watermelon"},
{"id":"5","tagName":"pineapple"}
];

$.each(json, function(idx, obj) {
alert(obj.tagName);
});

위 코드 조각은 정상적으로 작동하며 예상대로 "apple", "orange" 등을 표시합니다.
문제: JSON 문자열

다음 예에서는 JSON 문자열(작은따옴표 또는 큰따옴표로 묶임)을 직접 선언합니다.

var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},
{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"},
{"id":"5","tagName":"pineapple"}]';

$.each(json, function(idx, obj) {
alert(obj.tagName);
});

Chrome에서는 콘솔에 다음 오류가 표시됩니다.

잡히지 않은 TypeError: '156'을 검색하는 데 'in' 연산자를 사용할 수 없습니다.
[{"id":"1","tagName":"apple"}에서...

해결책: JSON 문자열을 JavaScript 개체로 변환합니다.
이 문제를 해결하려면 표준 JSON.parse() 또는 jQuery의 $.parseJSON을 통해 JavaScript 객체로 변환하세요.

var json = '[{"id":"1","tagName":"apple"},{"id":"2","tagName":"orange"},
{"id":"3","tagName":"banana"},{"id":"4","tagName":"watermelon"},
{"id":"5","tagName":"pineapple"}]';

$.each(JSON.parse(json), function(idx, obj) {
alert(obj.tagName);
});

//or 

$.each($.parseJSON(json), function(idx, obj) {
alert(obj.tagName);
});
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.