Friday, April 26, 2013
Array to Json in javascript
In the web developement ,Array to Json conversion and viceversa are frequently used. here im explaining how to convert the date of array into json formate.
Eg:
Array name arr, calling the arra2json function by passing the arr as parameter.
var arr = new Array();
arr['name'] = 'a1';
arr['address'] = 'a2',
arr['city'] = 'a3',
arr['state'] = 'a4'
array2json(arr);
/*
*Function to convert to array to json formate
*/
function array2json(arr) {
var parts = [];
var is_list = (Object.prototype.toString.apply(arr) === '[object Array]');
for(var key in arr) {
var value = arr[key];
if(typeof value == "object") { //Custom handling for arrays
if(is_list) parts.push(array2json(value)); /* :RECURSION: */
else parts[key] = array2json(value); /* :RECURSION: */
} else {
var str = "";
if(!is_list) str = '"' + key + '":';
//Custom handling for multiple data types
if(typeof value == "number") str += value; //Numbers
else if(value === false) str += 'false'; //The booleans
else if(value === true) str += 'true';
else str += '"' + value + '"'; //All other things
// :TODO: Is there any more datatype we should be in the lookout for? (Functions?)
parts.push(str);
}
}
var json = parts.join(",");
if(is_list) return '[' + json + ']';//Return numerical JSON
return '{' + json + '}';//Return associative JSON
}
Above function array2json returns the output of the bellow json formate.
output -> {"name":"a1","address":"a2","city":"a3","state":"a4"}
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment