Кодирование объекта 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':{...}}}
вы получите картину. Что бы я ни делал, это не работает. Все кодеры JSON, такие как json2 и такие, производят
[]
Ну, это мне не помогает. В основном я хотел бы иметь что-то вроде php .
2 ответов
Если переменная 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'
}
}
}