2013-10-04 4 views
-6

Google 크롬 용 앱을 만들려고합니다. 이런 방식으로 방문한 웹 페이지의 모든 링크를 파일 시스템에 저장하고 있습니다. 죄송합니다, 잘못된 사본 [{ "cur": "currentUrl", "next": "nextUrl", "rel": "relation "rel": "rel2"} , { "cur": "currentUrl3", "next": "nextUrl3", "rel"} "{cur": "currentUrl2", "nextUrl2" : "relation3"} ... ]javascript 및 json 객체

이는 json 개체의 형식입니다. 이제 각 배열의 첫 번째 요소 만 가져오고 싶습니다. 어떻게 할 수 있습니까? 결과는 다음과 같아야합니다.

node(){ 
    ["currentUrl","currentUrl2", "currentUrl3" and so on..] 
} 
+6

귀하의 JSON이 유효하지 않습니다. JavaScript 객체는 쉼표로 구분 된 목록이 아닌 키 값 쌍으로 구성됩니다. 당신은 json 유효성을 확인할 수 있습니다 여기에 : http://jsonlint.com/ –

+0

죄송합니다 내 코드의 나쁜 사본을 넣어 .. – nicpic

답변

0

당신이 그것을 할 수있는 방법은 다음과 같습니다

var json = '[{"curUrl":"acme.com", "nextUrl":"acme2.com", "relation":"none"},{"curUrl":"acme3.com", "nextUrl":"acme4.com", "relation":"none"},{"curUrl":"acme5.com", "nextUrl":"acme6.com", "relation":"none"}]'; 

var arrCurUrls = new Array(); 

function getCurUrls(){ 
    var parsedJSON = JSON.parse(json); 

    for(var i=0; i<parsedJSON.length; i++){ 
     arrCurUrls.push(parsedJSON[i]['curUrl']); 
    } 
    alert(arrCurUrls); 
} 
1

JSON을 포맷해야합니다. 여기

[ 
    { 
    "currentUrl": "value", 
    "nextUrl": "value", 
    "relation": "value" 
    }, 
    { 
    "currentUrl2": "value", 
    "nextUrl2": "value", 
    "relation2": "value" 
    }, 
    { 
    "currentUrl3": "value", 
    "nextUrl3": "value", 
    "relation3": "value" 
    } 
] 
+0

키 값은 실제로 항목의 배열을 저장할 수 있습니다. – sidneydobber