js中将字符串转为JSON的三种方式

1、eval方式解析,恐怕这是最早的解析方式了。如下:

function strToJson(str){
var json = eval(‘(‘ + str + ‘)‘);
return json;
} 

2、new Function形式,比较怪异哦。如下:

function strToJson(str){
var json = (new Function("return " + str))();
return json;
} 

3、使用全局的JSON对象,如下:

function strToJson(str){
return JSON.parse(str);
} 

目前 IE8(S)/Firefox3.5+/Chrome4/Safari4/Opera10 已实现了该方法,以下是部分资料:http://blogs.msdn.com/ie/archive/2008/09/10/native-json-in-ie8.aspx https://developer.mozilla.org/en/Using_JSON_in_Firefox 
使用JSON.parse需严格遵守JSON规范,如属性都需用引号引起来,如下:

var str = ‘{name:"jack"}‘;
var obj = JSON.parse(str); // --> parse error 

原文来自:http://www.jb51.net/article/25987.htm

  

时间: 2024-10-15 14:10:47

js中将字符串转为JSON的三种方式的相关文章

js中将字符串转换成json的三种方式

1,eval方式解析,恐怕这是最早的解析方式了.如下: function strToJson(str){ var json = eval('(' + str + ')'); return json; } 记得别忘了str两旁的小括号. 2,new Function形式,比较怪异哦.如下 function strToJson(str){ var json = (new Function("return " + str))(); return json; } 3,使用全局的JSON对象,如

字符串转json的三种方法

1 var str='{"a":1,"b":2}'; 2 //第一种 3 str = eval('('+b+')'); 4 //第二种 5 str = JSON.parse(b); 6 //第三种 7 str =new Function("return"+b)(); 8 9 alert(str.a); //1

ajax操作json的三种方式

一. 什么是json? 1. JSON是一种轻量级的数据交换格式 2. JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在网络或者程序之间轻松地传递这个字符串,并在需要的时候将它还原为各编程语言所支持的数据格式 JSON最常用的格式是对象的 键值对.例如下面这样: {"firstName": "Brett", "lastName": "McLaughlin"} 具体前台代码如下: <!

Django objects的查询结果转化为json的三种方式

第一种方式:利用seriallizers这个方法,官网的解释说:将复杂的数据结构变成json.xml或者其他的格式 import json from django.core import serializers def area2(request,id): data = {} province = serializers.serialize("json",AreaInfo.objects.filter(parea__isnull=True)) data["data"

js中可以改变作用域的三种方式(改变this)

第一种方式:使用apply()方法: function sum(x, y) { alert(this); return x + y;//这里的this指的是callS对象方法 } function callS() { callS.callSum1(1, 2); } callS.callSum1 = function (x, y) { alert(this);//这里的this是callS方法 var s = sum.apply(this, arguments); return s; } call

js中的事件绑定的三种方式

1 直接在html标签中绑定 <button onclick = "show()"></button> 注意当你引用的js代码是包裹在window.onload中的形式的时候,show()是会报没有定义的错误,原因在于window.onload是在 页面全部加载完之后再去解析加载里面的内容.而button的点击事件在解析button的时候没有被定义. 2 用js的对象进行绑定事件 <body> <buttonid="btn1"

C# 自动计算字符串公式的值(三种方式)

http://www.csframework.com/archive/2/arc-2-20110426-1394.htm 提供数据的WebForm2.aspx [csharp] view plain copy public partial class WebForm2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { string callback = Request.QueryString

js中将字符串转换成json的方式

1.eval 方式解析,实际中用的还是比较少 function evalJson(str){ var json = eval('(' + str + ')'); return json; } 2.使用js 的全局对象 JSON 对象 function isJson(str){ return JSON.parse(str); } 3.还有就是jq中 使用的 $.pareJSON $.parseJSON(str); 4.看jq源码和一些人的写法了解一种new Function function ne

JS字符串转换为JSON的四种方法笔记

1.jQuery插件支持的转换方式:  示例: $.parseJSON( jsonstr ); //jQuery.parseJSON(jsonstr),可以将json字符串转换成json对象 2.浏览器支持的转换方式(Firefox,chrome,opera,safari,ie)等浏览器: 示例: JSON.parse(jsonstr); //可以将json字符串转换成json对象 JSON.stringify(jsonobj); //可以将json对象转换成json对符串 注:ie8(兼容模式