js数组使用JSON.stringify()和toString()的区别
2018-03-09 14:02
274 查看
var arr = [1,2,3,4];
console.log(arr.toString()); // 1,2,3,4
alert(JSON.stringify(arr));
console.log(JSON.stringify(arr)); // [1,2,3,4]
arr.toString()是将数组转化成字符串,因此不带 [ ]
而JSON.stringify(arr)是从一个对象解析出JSON字符串,是带[]的 另外JSON.parse() 是用于从一个字符串中解析出json对象
var str = '{"name":"huangxiaojian","age":"23"}'
结果:JSON.parse(str)
- age: "23"
- name: "huangxiaojian"
- __proto__: Object
JSON对象有两个方法:stringify()和parse()。在最简单的情况下,这两个方法分别用于把JavaScript对象序列化为JSON字符串和把JSON字符串解析为原生JavaScript。例如:
新建一个HTML:代码如下:
<html>
<head>
<title></title>
<script type="text/javascript">
function init()
{
var book={
title:"JavaScript高级程序设计",
authors:[
"Nicholas C. Zakas"
],
edition:3,
year:2011
};
var jsonBook=JSON.stringify(book);
var objectBook=JSON.parse(jsonBook);
var title=objectBook.title;} </script> </head> <body> <input type="button" onclick="init()" value="测试" /> </body> </html>
默认情况下,JSON.stringify()输出的JSON字符串不包含任何空字符或缩进,因此保存在jsonBook中的字符串如下所示:
复制代码 代码如下:
{"title":"JavaScript高级程序设计","authors":["Nicholas C. Zakas"],"edition":3,"year":2011}
在序列化JavaScript对象时,所有函数及原型成员都会被有意忽略,不体现在结果中。此外,值为undefined的任何属性也都会被跳过。结果中最终都是值为有效JSON数据类型的实例属性。
阅读更多
相关文章推荐
- js数组使用JSON.stringify()和toString()的区别
- js数组使用JSON.stringify()和toString()的区别,JSON.parse
- js数组使用JSON.stringify()和toString()的区别
- js数组使用JSON.stringify和toString的区别
- js基础-----json与数组的区别及for in的使用
- JS_对象_数组_json使用
- Node.js中的数组和javascript中的数组使用区别
- js数组如何添加json数据及js数组与json的区别
- Js中JSON.stringify()与JSON.parse()与eval()详解及使用案例
- javascript 数组的使用 + js 对象 转换为json 字符串
- 使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
- 原生js使用forEach()与jquery使用each遍历数组,return false 的区别
- js数值使用及数组转json,转化后的json传入后台解析
- js中使用for 循环和 for in 遍历数组区别
- 原生js使用forEach()与jquery使用each遍历数组,return false 的区别
- 使用JSON.parse()和JSON.stringify()区别
- json 的 使用方法以及与数组的区别
- js中数组遍历for与for in区别(强烈建议不要使用for in遍历数组)
- JS的对象和数组的区别和使用
- js中数组遍历for与for in区别(强烈建议不要使用for in遍历数组)