JS中字符串转utf-8编码的方法是什么?在实际的项目中,如果我们想要对一些中文字符串进行二进制流编码的话,首先就需要将字符串转换为utf-8编码,那么这一需求要怎样实现呢?
对于中字符串转utf-8编码的效果,举个例子,输入的是一个字符串:'呆滞的慢板今天挣了100块钱'。
输出的是一个字节序列:
[229, 145, 134, 230, 187, 158, 231, 154, 132, 230, 133, 162, 230, 157, 191, 228, 187, 138, 229, 164, 169, 230, 140, 163, 228, 186, 134, 49, 48, 48, 229, 157, 151, 233, 146, 177]
又或者是这一个单字节的字符串:
"xE5x91x86xE6xBBx9ExE7x9Ax84xE6x85xA2xE6x9DxBFxE4xBBx8AxE5xA4xA9xE6x8CxA3xE4xBAx86100xE5x9Dx97xE9x92xB1" "åæ»çæ ¢æ¿ä»å¤©æ£äº100åé±"
经过不懈的折腾,终于搞明白了,有两种解决方案:
function str2utf8(str) { encoder = new TextEncoder('utf8'); return encoder.encode(str); }
这种返回的是一个整数数组。
原理是,如果使用 encodeURI(str),其中如果碰到中文字符之类的,就会按照 utf8 编码之后变成
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2018 群英 版权所有 茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号-36 粤公网安备 44090202000006号 粤工商备P091701000595