Вопрос по javascript, json – Как я могу построить строку JSON в Javascript / JQuery?

21

Я хотел бы построить строку JSON программно. Конечный продукт должен быть примерно таким:

var myParamsJson = {first_name: "Bob", last_name: "Smith" };

Однако я бы хотел сделать это по одному параметру за раз. Если бы это был массив, я бы просто сделал что-то вроде:

var myParamsArray = [];
myParamsArray["first_name"] = "Bob";
myParamsArray["last_name"] = "Smith";

Я бы даже не возражал против создания этого массива и последующего преобразования в json. Есть идеи?

используйте JSON.stringify ()ajaxify.com/run/json Larry Battle
Обратите внимание, что вы не должны использовать нечисловые свойства с массивами, вместо этого используйте простой объект. Felix Kling
stackoverflow.com/questions/558518/… Ryan Quinn
возможный дубликатConvert JS object to JSON string а такжеpossibly others. Felix Kling
Конечно, вы можете построить объект так, как хотите, и, кажется, вы уже знаете, как это сделать. Просто раньше спрашивали, как преобразовать массив или объект в JSON, и нет смысла повторять ответы. В любом случае, сообщество решает ... Если ваш вопрос больше о том, как создать объект динамически, то вы должны прояснить это. В заголовке спрашивается, как конвертировать в JSON. Felix Kling

Ваш Ответ

2   ответа
11

Создайте нормальный объект:

var o = {
    first_name: 'Robert',
    last_name: 'Dougan'
};

А потом использоватьJSON.stringify чтобы сделать это строкой:

var string = JSON.stringify(o); //"{"first_name":"Robert","last_name":"Dougan"}"
51

var myObj = {};
myObj["first_name"] = "Bob";
myObj["last_name"] = "Smith";

и тогда вы могли бы использоватьJSON.stringify метод, чтобы превратить этот объект в строку JSON.

var json = JSON.stringify(myObj);
alert(json);

покажет:

{"first_name":"Bob","last_name":"Smith"}

Этот метод изначально встроен во все современные браузеры (даже IE8 поддерживает его, даже если IE8 очень далек от современного браузера). И если вам нужно поддерживать некоторые устаревшие браузеры, вы можете включитьjson2.js скрипт.

Похожие вопросы