[javascript] Javascript 객체를 Json 문자열로 인코딩

Javascript 객체를 JSON 문자열로 인코딩하고 싶은데 상당한 어려움이 있습니다.

개체는 다음과 같습니다.

new_tweets[k]['tweet_id'] = 98745521;
new_tweets[k]['user_id'] = 54875;
new_tweets[k]['data']['in_reply_to_screen_name'] = "other_user";
new_tweets[k]['data']['text'] = "tweet text";

이것을 JSON 문자열로 가져와 ajax 요청에 넣고 싶습니다.

{'k':{'tweet_id':98745521,'user_id':54875, 'data':{...}}}

당신은 그림을 얻습니다. 내가 무엇을하든 작동하지 않습니다. json2와 같은 모든 JSON 인코더는

[]

글쎄, 그건 도움이되지 않습니다. 기본적으로 PHP encodejson함수 와 같은 것을 갖고 싶습니다 .



답변

변수 k가 정의되어 있지 않으면 문제의 원인 일 수 있습니다. 이와 같은 것이 원하는 것을 수행합니다.

var new_tweets = { };

new_tweets.k = { };

new_tweets.k.tweet_id = 98745521;
new_tweets.k.user_id = 54875;

new_tweets.k.data = { };

new_tweets.k.data.in_reply_to_screen_name = 'other_user';
new_tweets.k.data.text = 'tweet text';

// Will create the JSON string you're looking for.
var json = JSON.stringify(new_tweets);

한 번에 모두 수행 할 수도 있습니다.

var new_tweets = {
  k: {
    tweet_id: 98745521,
    user_id: 54875,
    data: {
      in_reply_to_screen_name: 'other_user',
      text: 'tweet_text'
    }
  }
}


답변

다음 JSON.stringify과 같이 사용할 수 있습니다 .

JSON.stringify(new_tweets);


답변