JSON.parse()和JSON.stringify()方法总结

JSON对象有两个方法prase()和stringify(),用于字符串与JSON对象之间的互相转换。

(1)JSON.parse(string[, translator])

使用JSON.parse()方法可以将字符串转换为JSON对象。

参数:string参数是要转换为对象的JSON字符串。

var str = '{"name":"叶德华","age":23}';
str = JSON.parse(str);

(2)JSON.stringify(object[, replacer[, space]])

使用JSON.stringify()方法可以将JSON对象转为字符串。

参数:

object参数:是要转为字符串的JSON对象。

replacer参数:可选,可以是改变字符串转换过程的函数,也可以是一组String和Number对象,这些对象用作一个白名单,用于选择要转换为字符串的对象的属性。如果这个值是空或没有提供,则在所得的JSON字符串中包含对象的所有属性。

space参数:可选,是一个String或Number对象,用于把空白插入输出的JSON字符串,以提高可读性。如果这是一个数值,则表示用作空白的空格字符数;如果该数值大于10,就取其值为10;小于1的值表示不应使用空格。如果这是一个字符串(如果该字符串多于10个字符,就取前10个字符),就把该字符串用作空白。如果没有提供这个参数(或者为空),就不使用空白。

示例代码:

var str = '{"name":"叶德华","age":23}';
str = JSON.parse(str);
console.info(JSON.stringify(str));
console.info(JSON.stringify(str,null,5));
console.info(JSON.stringify(str,["name"],5));
console.info(JSON.stringify(str,null,"###"));

下图1就是上面代码的执行效果:

运行结果

图1:运行结果

注意,应尽量避免使用eval()方法来将字符串解析为JSON对象,有关eval()的用法参阅《javascript使用eval解析json的注意点》。

本文标题:JSON.parse()和JSON.stringify()方法总结

本文链接:http://yedward.net/?id=272

本文版权归作者所有,欢迎转载,转载请以文字链接的形式注明文章出处。

相关文章