通过对外部接口的调用发现返回的中文数据是ISO-8859-1编码,在javascript中有什么方法转为utf-8格式呢?
闭关修行中......
亲,ISO-8859-1 不支持中文。如果只支持 iso-8859 的话,那就把中文字符串写成转义的形式呗比如 两 "\u4E24"
两
"\u4E24"
ISO-8859-1并没有中文字符的编码,但它有一个“单字节编码”的特性。所以如果对方给你的中文字符是通过ISO-8859-1编码处理的话,其真实的处理过程很有可能是这样的:“中”-》“0x4E2D”(utf-8编码)-》“0x4E 0x2D”(ISO-8859-1编码),中间的utf-8编码只是举例,也可能是别的编码方式。
所以可能的解决方式是把ISO-8859-1编码合并回来,然后搞清楚对方是用什么方式对中文字符进行编码的,然后你再进行相应的解码。
发送请求时有加content-type: application/json;charset=utf-8的header么?
content-type: application/json;charset=utf-8
觉得得服务器端转完了才行吧,不过不是很清楚
不晓得这个是不是你要的答案
unescape(encodeURIComponent(originalstring));
http://stackoverflow.com/questions/5396560/how-do-i-convert-special-utf-8-chars-to-their-iso-8859-1-equivalent-using-javasc
最好是贴出来一个ISO-8859-1的结果,然后试试看
亲,ISO-8859-1 不支持中文。
如果只支持 iso-8859 的话,那就把中文字符串写成转义的形式呗
比如
两
"\u4E24"
ISO-8859-1并没有中文字符的编码,但它有一个“单字节编码”的特性。所以如果对方给你的中文字符是通过ISO-8859-1编码处理的话,其真实的处理过程很有可能是这样的:“中”-》“0x4E2D”(utf-8编码)-》“0x4E 0x2D”(ISO-8859-1编码),中间的utf-8编码只是举例,也可能是别的编码方式。
所以可能的解决方式是把ISO-8859-1编码合并回来,然后搞清楚对方是用什么方式对中文字符进行编码的,然后你再进行相应的解码。
发送请求时有加
content-type: application/json;charset=utf-8
的header么?觉得得服务器端转完了才行吧,不过不是很清楚
不晓得这个是不是你要的答案
http://stackoverflow.com/questions/5396560/how-do-i-convert-special-utf-8-chars-to-their-iso-8859-1-equivalent-using-javasc
最好是贴出来一个ISO-8859-1的结果,然后试试看