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+")"); } |