几个不错的JS字符串转成JSON对象实例

例1
在JS中,把 json 格式的字符串转成JSON对象,关键代码

 
json = eval('('+str+')');

 

方法如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JSON应用</title>
<script type="text/javascript">
function StrToJSON(str) {
 json = eval('('+str+')');
 return json;
}
function ToJSON(data) {
 json = eval(data);
 return json;
}
// JSON数据
str = '{id:1,title:"你好,朋友",addtime:"2010-05-03"}';
strJson = StrToJSON(str);
data = {id:2,title:"你好,哈哈",addtime:"2010-05-04"};
Json = ToJSON(data);
document.write(strJson.id+"、 "+strJson.title+" "+strJson.addtime+"<br />");
document.write(Json.id+"、 "+Json.title+" "+Json.addtime+"<br />");
</script>
</head>
<body>
</body>
</html>

 

 

例2  利用new function 形式
function strToJson(str){ 
var json = (new Function("return " + str))(); 
return json; 
} 

 


例3  利用相关json2 插件实例
<script src="../jquery/jquery-1.5.2.min.js" type="text/javascript"></script>
    <script src="../json2.js" type="text/javascript"></script>
var a = '{ "name": "tom", "sex": "男", "age": "24" }'; // 用于组成json的字符串; alert("用于组成json的字符串:【"+a+"】"); var b = JSON2.parse(a); // 把字符串a转换为json格式b var c = JSON2.stringify(a); //把json格式b转换为字符串c alert("转换后的字符串:【"+c+"】");

 

json字符串转成js对象我所知的方法有2种:

复制代码
//json字符串转换成json对象
var str_json = "{name:'liuchuan'}"; //json字符串

//1. 函数对象构造定义
var obj1 = new Function("return " + str_json)();
console.log(obj1.name);

//2. eval函数
var obj2 = eval("(" + str_json + ")"); //注意:一定要加上小括号
console.log(obj2.name);
复制代码

 

jQuery.json 是 jQuery 的一个插件,可轻松实现对象和 JSON 字符串之间的转换。可序列化 JavaScript 对象、数值、字符串和数组到 JSON 字符串,同时可转换 JSON 字符串到 JavaScript,免费下载地址

对象转成json

    //对象转成json  
    var thing = {plugin: 'jquery-json', version: 2.3};//js对象  
    var str = $.toJSON(thing);//转换为json,结果: '{"plugin":"jquery-json","version":2.3}'  

 


json转成对象
 

    //json转成对象  
    var  obj= $.evalJSON(str);  
    var name=obj.plugin;//js对象.属性,结果: "jquery-json"  
    var version =obj.version;//结果: 2.3  

 

以上即为javasript中对象与json串之间转换的总结。

 

摘录了三篇文章:

文章1:js字符串转成JSON

文章2:js中json字符串转成js对象

文章3:为javasript中对象与json串之间转换的总结。

 

 

posted on 2017-07-28 11:37  踏歌&而行  阅读(262)  评论(0)    收藏  举报