关闭

解析Json字符串的三种方法

时间: 2018-04-17阅读: 2666标签: json

在很多时候,我们的需要将类似 json 格式的字符串数据转为json,下面将介绍日常中使用的三种解析json字符串的方法


1.首先,我们先看一下什么是 json 格式字符串数据,很简单,就是 json 字符串化,在json 最外加单/双号变为字符串数据     

var str='{"name":"Mike","sex":"女","age":"29"}';
var t2="[{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";


2.我们用Object.prototype.toString.call() 来检测数据类型

console.log(Object.prototype.toString.call(str));//[object String]
console.log(Object.prototype.toString.call(t2));//[object String]


 

第一种方法:evel();

特点:安全性底,不建议使用,单个JSON对象时要加括号,JSON数组就不需要了,示例:

var evajson  =eval('('+str+')');
var evajsarr = eval(t2);


转换后,再使用Object.prototype.toString.call() 来检测转换后的数据类型

console.log(Object.prototype.toString.call(evajso))//[object Object]
console.log(Object.prototype.toString.call(evajsarr))//[object Array]


第二种:new Function()  

 注意:函数要有返回,所以要加“return”;示例:

var fnjson = new Function("return"+str)();
var fnjsonArr = new Function("return"+t2)();


 转换后,再使用Object.prototype.toString.call() 来检测转换后的数据类型

console.log(Object.prototype.toString.call(fnjson ))//[object Object]
console.log(Object.prototype.toString.call(fnjsonArr ))//[object Array]


第二种:JSON.parse() 

特点:主流,兼容性好,推荐,示例:

var parjson =  JSON.parse(str);    
var parjson =  JSON.parse(t2);


检测转后的数据类型

console.log(Object.prototype.toString.call(parjson ))//[object Object]
console.log(Object.prototype.toString.call(parjson ))//[object Array]


参考:https://www.w3cschool.cn/json/8kjw1pl0.html

来源:http://www.cnblogs.com/beyonds/p/8858912.html

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/649

js实现json数据格式化及压缩

经常写代码就免不了与json这种轻量级的数据打交道,一般我们得到的json字符串是混乱的,计算机不在乎,再乱它都能认识,作为人类,虽然也能认识,但识读起来比较困难。

json与jsonp的使用

在ajax中 JSON用来解决数据交换问题,而JSONP来实现跨域。备注:跨域也可以通过服务器端代理来解决;理解:JSON是一种数据交换格式,而JSONP是一种依靠开发人员的聪明才智创造出的一种非官方跨域数据交互协议。

js 将json字符串转换为json对象的方法解析

将json字符串转换为json对象的方法。在数据传输过程中,json是以文本,即字符串的形式传递的,而JS操作的是JSON对象,所以,JSON对象和JSON字符串之间的相互转换是关键

JSON.parse 三种实现方式

近日在翻红宝书,看到 JSON 那一章节,忽然想到:“如何用 JS 实现 JSON.parse?”带着这个疑问,我找到了 JSON 之父 Douglas Crockford 写的 ployfill,里面提供了三种实现方式,下面我们逐一来分析。

package.json文件介绍

每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息。npm install命令根据这个配置文件,自动下载所需的模块。

那些你不知道的JSON.stringify()的用处

一般情况下,我们使用JSON.stringify() 是为了将一个对象转为字符串输出。第一个参数是我们要字符串化的对象或者数组,但是其实它还有第二个/第三个参数哦

javascript怎么解析json?

JavaScript解析json数据,可以使用JSON.parse()方法来实现解析。JSON.parse()方法可以解析JSON字符串,转换为 JavaScript 对象。

JSON对象转成formData对象,formData对象转成JSON对象

在向后端请求时,如果上传的数据里存在file文件对象,需要用到表单提交,这时候我们需要将JSON对象,转成formData对象,具体见代码 ;也可使用formData.entries()

对json的理解?

JSON对象:以 {开始,以}结束,里面则是一系列的键(key)值(value)对,其中键(key) 是字符串,而值(value)可以是字符串,数值,true, false,null,对象或数组,也就是说某个键(key) 的值(value)可以是一个数组

服务端返回的json数据,导致前端报错的原因及解决方法

最近在开发的过程中遇到了一个问题:后端传过来的json字符串不是标准的json字符串,后端传过来的json字符串中包含一些不标准的字符或错误的引号嵌套

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!