jQuery.parseJSON('{"name":"John"}') преобразует представление строки в объект
но я хочу наоборот. Объект должен быть преобразован в строку JSON
Я получил ссылку http://www.devcurry.com/2010/03/convert-javascript-object-to-json.html
но для этого нужно иметь json2.js. У jQuery есть собственный метод для этого?
Преобразование объекта в строку JSON
Ответ 1
jQuery выполняет только некоторую проверку регулярного выражения перед вызовом собственного метода браузера window.JSON.parse(). Если это не доступно, для создания объекта Javascript он использует eval() или более точно new Function().
Противоположностью JSON.parse() является JSON.stringify(), который сериализует объект Javascript в строку. Для этого у jQuery нет собственной функциональности, вы должны использовать встроенную версию браузера или json2.js из http://www.json.org
JSON.stringify() доступен во всех основных браузерах, но для совместимости с более старыми браузерами вам все равно требуется резервное копирование.
Ответ 2
Также полезно использовать Object.toSource() для целей отладки, где вы хотите показать объект и его свойства для целей отладки. Это универсальная функция Javascript (не jQuery), однако она работает только в "современных" браузерах.
Ответ 3
Преобразование объекта JavaScript в json-данные
$("form").submit(function(event){
event.preventDefault();
var formData = $("form").serializeArray(); // Create array of object
var jsonConvertedData = JSON.stringify(formData); // Convert to json
consol.log(jsonConvertedData);
});
Вы можете проверить данные json, используя http://jsonlint.com
Ответ 4
Вы можете использовать отличный плагин jquery-Json:
http://code.google.com/p/jquery-json/
Легко конвертировать в объекты Json и из них.