字符串與json互轉
阿新 • • 發佈:2017-09-19
ont 兼容ie value cti span == eval foreach clas
一、json 轉字符串
var str = "1:測試1-1;2:測試1-2;3:測試1-3"; //字符串 var str0 = str.split(‘;‘); //字符串轉數組[ "1:測試1-1", "2:測試1-2", "3:測試1-3" ] /*方法一*/ //運用 $.map 跟 JSON.parse(‘str‘) 方法實現 var str1_1 = $.map( str0, function(value, index){ if( typeof value === "string"){ var str_ = value.split(‘:‘); return ‘"‘+ str_[0] + ‘":"‘ + str_[1] + ‘"‘; } }) //格式化加引號Array: [ ""1":"測試1-1"", ""2":"測試1-2"", ""3":"測試1-3"" ] varstr1_2 = "{"+ str1_1.join(‘,‘)+ "}"; //字符串格式化string: {"1":"測試1-1","2":"測試1-2","3":"測試1-3"} console.log(JSON.parse(str1_2)); //輸出結果Object:{1: "測試1-1", 2: "測試1-2", 3: "測試1-3"} /*方法二*/ // 運用 原生 forEach 跟 eval(‘({"+str+"})‘) 方法實現str0.forEach(function(value,index,array){ //forEach 不兼容ie8- 可以使用方法一的 $.map 替換 var str_=value.split(‘:‘); array[index]="\""+str_[0]+"\":\""+str_[1]+"\""; }); var str2_1=eval("({"+str0.join(‘,‘)+"})"); console.log(str2_1); //輸出結果Object:{1: "測試1-1", 2: "測試1-2", 3: "測試1-3"}
字符串與json互轉