2013-07-28 2 views
1

나는 그물에서 보았지만 성공하지 못한 예제에 따라 json 구조체를 동적으로 빌드하려고한다. 이 내가 구축하려고 JSON입니다 :자바 스크립트에서 json이 동적으로 작동하지 않는다.

{ 
    "campaigns": [ 
     { 
      "campaign_id":, 
      "profile_id":, 
      "state":, 
      "goal": 

     }, 
     { 
      "campaign_id":, 
      "profile_id":, 
      "state":, 
      "goal": 
     }  
    ] 
} 

를이 코드입니다 : (json으로의) 캠페인을 구축 할 데이터가있을 때마다 불리는이 기능 요소

var campaignsJson ={}; 
campaignsJson.campaigns =[]; 


var i = 0; 
    function buildJson(stateCampaignId, 
        profile_id, 
        stateSelectedValue, 
        dailyImpressionGoalValue, 
        pacingValue, 
        segmentGroupTargetsUpdatedataValue, 
        frequencytypeProfileValue, 
        frequencysetProfileValue 
        ) 
    { 

    campaignsJson.campaigns[i].campaign_id = stateCampaignId; 
    campaignsJson.campaigns[i].profile_id = profile_id; 
    campaignsJson.campaigns[i].state = stateSelectedValue; 
    campaignsJson.campaigns[i].goal = dailyImpressionGoalValue; 
    i++; 
    var campaignsJsonstringify = JSON.stringify(campaignsJson); 
    alert(campaignsJsonstringify); 
    } 

을 나에게 "정의되지 않은 campaign_id 속성을 설정할 수 없습니다." 무엇을 의미합니까? 그리고 그 이유는 무엇입니까?

답변

4

그냥

campaignsJson.campaigns[i].campaign_id = stateCampaignId; 

전에이 추가 :

campaignsJson.campaigns[i] = {}; 

그래서 당신은 속성을 설정할 수 있습니다있는에 물체가 있다고.

이제 JSON 구조에 대해 말하지 마십시오. 당신이 만든 것은 평범한 표준 자바 스크립트 객체 인 반면 JSON은 문자열 기반 교환 형식입니다.

+2

JSON이라는 용어의 올바른 사용을 주장하는 +1. JSON을 동적으로 작성하는 것은 String 연결을 필요로합니다 (자바 스크립트에서는 바보입니다). – Thilo

관련 문제