2011-04-09 6 views
0

내가이 jQuery 코드를 가지고 :배열을 통해이 루프를 만드는 방법은 무엇입니까?

function(returnArray){ 
    for (i=0; i<returnArray.length; i++) { 
     $('<li class="tagSuggestTag"/>').appendTo('#tagSuggest ul').text(returnArray[i]); 
    } 

반환 배열은 배열입니다,하지만 난이 작업을 수행 할 때 몇 가지 이유로 배열의 모든 편지 대신 배열의 각 값을 반복합니다.

returnArray는 ["hello", "helloe", "helloer"]하고 그 루프를 통과 반환 :

enter image description here

+5

returnArray가 배열입니까? '[ "hello", "helloe", "helloer"]'문자열 인 것 같습니다. – Dunes

+0

'returnArray'는 문자열입니다 (특히 첫 번째 출력 문자가'[')이므로이 코드를 생성 할 수 있습니까? –

+0

@Dunes @ Anders Lindahl 사실 지금 생각해 보았습니다. 그것은 배열의 json_encode()의 PHP 에코에 대한 것입니다. 그게 문자열을 돌려 줄 것이라는 생각이 들었습니까? – chromedude

답변

2

그것은이 returnarray 정말 배열이 아닌 그 질문에 대한 코멘트에 계시되었다, 그것은 PHP 함수 json_encode()에 의해 계산 된 문자열의 JSON 문자열 표현입니다.

함수 jQuery.parseJSON은 이것을 자바 스크립트 배열로 바꿀 수 있습니다.

1

배열은 문자열입니다. 사용

var myarray = eval('["hello", "helloe", "helloer"]'); 
+0

euuw - 왜 eval입니까? returnArray는 배열이 아니기 때문에'var myarray = [ "hello", "helloe", "helloer"];'는 – mplungjan

+0

으로 동작 할 것입니다. 이것은 배열의 문자열 표현을 실제 배열로 변환하는 방법의 예일뿐입니다. 실제 코드는 var 일 것입니다. realArray = eval (returnArray); – herostwist

관련 문제