JavaScript的 JSON.parse()和JSON.stringify() 函数

 JavaScript  2018-11-24  admin  2958  3993

JavaScript的 JSON.parse()和JSON.stringify() 函数

JSON.parse()     字符串转json对象

JSON.parse()是Javascript中一个常用的 JSON 转换方法,JSON.parse()可以把JSON规则的字符串转换为JSONObject,JSON.parse()很方便,并且几乎支持所有浏览器。

JSON.parse() 语法

JSON.parse(text[, reviver])

//text:需要被转换的字符串。

//[, reviver] : 可选参数,可以是一个回调方法。

返回值是一个 JSONObject。

JSON 解析实例

'{"domain" : "cent123.com","author":"abc"}'    
外面被引号包裹起来了,证明它就是个字符串,而不是JSON对象,那么要转换,这个时候JSON.parse() 就可以派上用场了。    
var json = JSON.parse('{"domain" : "cent123.com","author":"abc"}');    
如果抛出语法错误(Uncaught SyntaxError),正确会返回一个JSONObject,输出获取“domain”。    
var json = JSON.parse('{"domain" : "cent123.com","author":"abc"}');    
alert("json.domain = " + json.domain);    
//alert(json['domain']);//或者这样也可以

JSON.stringify() json对象转字符串

JSON.stringify()是Javascript中一个常用的内置 JSON 转换方法,JSON.stringify()可以把JSONObject 转化为 JSON 规则的字符串转换为,JSON.stringify()很方便,并且几乎支持所有浏览器。

JSON.stringify() 语法

JSON.stringify(value[, replacer[, space]])

JSON.stringify() 参数说明

参数 参数说明 备注

value 将要序列化成 一个JSON 字符串的值。 必选

replacer 如果是一个function,那么每个序列化成JSON的value都会经过这个function,如果是一个Array,那么序列化后的JSON字符串中的Key在这个数组中才会加入到返回的JSON 字符串中去。 可选

space 用于美化JSON字符串,如果是一个Number类型,代表的就是多少个空格。如果是0或者小于0,那么就是没有空格(和不填此项没有区别),如果是字符串,那么直接填充。 可选

JSON.stringify() 返回值说明

返回值是一个 JSON字符串,如:"{"domain":"centcent123.com"}"。

测试:

var json = {"domain" : "cent123.com","author":"abc"}
//它就是一个正常的JSON对象,我们需要把它转换成字符串,这个时候JSON.stringify() 就可以派上用场了。

var json = {"domain" : "cent123.com","author":"abc"}
alert(JSON.stringify(json));

两个函数浏览器支持

  • Firefox 3.5 + (目前已经50+版本了)

  • Internet Explorer 8 +(这个...)

  • Chrome(一直支持)

  • Opera 10 +

  • Safari 4 +


如果文章对您有帮助,点击下方的广告,支持一下作者吧!

相关推荐


esp32 使用mqtt 通讯

esp32 使用mqtt 通讯基于go的mqtt 客户端packagemain import( "fmt" "github.com/gogf/gf/v2/encoding/gjson" "github.com/gogf/gf/v2/frame/g" "gobot.io/x/gobot" &qu

GoFrame 框架中使用 mqtt 协议通讯

GoFrame 框架中使用 mqtt//SPDX-License-Identifier:MIT //SPDX-FileCopyrightText:2022mochi-mqtt,mochi-co //SPDX-FileContributor:mochi-co packagemqtt import( "flag" "gfmqtt/internal/

laravel 自定义写入日志

laravel 自定义写入日志if(!function_exists('myLog')){ /** *生成自定义文件日志内容 *@param$data *@paramstring$title *@parambool$isClear *@returnvoid *@Author:cent123.com */ functionmyLog($data,string$tit

go 递归读取目录,并生成树形结构的数据

go 递归读取目录,并生成树形结构的数据//读取目录中的所有文件,如果是目录则递归读取,生成结构化的树形struct packagemain import( "encoding/json" "fmt" "os" "path/filepath" ) //TreeNode文件的树形结构体 ty