1. 程式人生 > >JS將unicode碼轉中文方法(解決IE8對JSON.stringify中文轉換成unicode的問題)

JS將unicode碼轉中文方法(解決IE8對JSON.stringify中文轉換成unicode的問題)

第①種情況:(無特殊字元)

// 把json物件轉為json串

var stringcontent = JSON.stringify(data.jsonObject);

//此時變數為:stringcontent={policy":[{"name":"must_installed","enabled":1,"key_check":1,"content":{"must_installed_list":["\u641c\u72d7"]},"desc":"\u5fc5\u987b\u5b89\u88c5\u8f6f\u4ef6"}]}

// 利用JS再做了一層解析,把unicode又變成中文。

eval(" var g_policy = '"+stringcontent+"';");

alert(g_policy);

//此時g_policy=={policy":[{"name":"must_installed","enabled":1,"key_check":1,"content":{"must_installed_list":["搜狗"]},"desc":"必須安裝軟體"}]}

第②種情況:(有特殊字元)如:unicode+後面這些~!@[email protected]#$%^&*()_}{|":<>//.,;'\][[

這個時候因為有特殊字元單引號和雙引號 第一種方法就處理不了

這個時候可以使用

var str = "\u7434\u5fc3\u5251\u9b44\u4eca\u4f55\u5728\uff0c\u6c38\u591c\u521d\u6657\u51dd\u78a7\u5929\u3002"

;

document.write(unescape(str.replace(/\\u/g, '%u'))); //琴心劍魄今何在,永夜初晗凝碧天。