js中string和object的互相转换实例 js 1410301

js中字符与对象相互转换是我们应用中碰到比较少的,下面我来总结几个string和object的互相转换实例,希望对大家会有所帮助。


 代码如下 复制代码

// string to object // eval() 函数可计算某个字符串,并执行其中的的

JavaScript 代码。

var str="var data='我是string还是object?'"; 
eval(str); 
console.log(data); // object to string

var obj=function(){ 
console.log("我是object还是string?");
 } 
console.log(obj.toString());

//带有空格与换行符 
console.log(obj.toString().replace(/[rn, ]/g,""));

//不带有空格与换行符

object 转 stirng

 代码如下 复制代码


function obj2str(o){
   var r = [];
   if(typeof o == "string" || o == null) {
     return o;
   }
   if(typeof o == "object"){
     if(!o.sort){
       r[0]="{"
       for(var i in o){
         r[r.length]=i;
         r[r.length]=":";
         r[r.length]=obj2str(o[i]);
         r[r.length]=",";
       }
       r[r.length-1]="}"
     }else{
       r[0]="["
       for(var i =0;i<o.length;i++){
         r[r.length]=obj2str(o[i]);
         r[r.length]=",";
       }
       r[r.length-1]="]"
     }
     return r.join("");
   }
   return o.toString();
}

string 转 object

 

 代码如下 复制代码

function taoRan(){
var str='{"result": [["提现", "219"], ["提现银行", "121"], ["退款", "272"], ["提现失败", "16"], ["团购", "15"], ["淘宝", "412"],["台湾", "58"], ["提现限额", "16"], ["提现时间", "81"], ["台湾认证", "26"]]}';
alert(strToObj(str).result[2]);
}

function strToObj(json){ 
         return eval("("+json+")"); 
}

你可能感兴趣的:(js,json)