jQuery.parseJSON('{"name":"John"}') converts string representation to object
but I want the reverse. Object is to be converted to JSON string
I got a link http://www.devcurry.com/2010/03/convert-javascript-object-to-json.html
but it need to have json2.js. Does jQuery have a native method to do this?
-
stackoverflow.com/questions/18932686/…user2801382– user28013822014-01-03 06:21:10 +00:00Commented Jan 3, 2014 at 6:21
4 Answers
jQuery does only make some regexp checking before calling the native browser method window.JSON.parse(). If that is not available, it uses eval() or more exactly new Function() to create a Javascript object.
The opposite of JSON.parse() is JSON.stringify() which serializes a Javascript object into a string. jQuery does not have functionality of its own for that, you have to use the browser built-in version or json2.js from http://www.json.org
JSON.stringify() is available in all major browsers, but to be compatible with older browsers you still need that fallback.
6 Comments
var theObject = (typeof data == "string") ? jQuery.parseJSON(data) : data;JSON host object since day 1.JSON.stringify() isn't defined. Quite a fail on all counts.Convert JavaScript object to json data
$("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);
});
You can validate json data using http://jsonlint.com
Comments
You can use the excellent jquery-Json plugin:
http://code.google.com/p/jquery-json/
Makes it easy to convert to and from Json objects.