Node.js 缓冲区对象上的Spread运算符
有人能解释一下这个代码是如何工作的吗Node.js 缓冲区对象上的Spread运算符,node.js,Node.js,有人能解释一下这个代码是如何工作的吗 [...Buffer('abc')] 结果是: [ 97, 98, 99 ] 首先,考虑这段代码: console.log([...[1, 2, 3]]); //[1, 2, 3] Spread运算符将尝试获取一个数组并将其转换为参数列表 js的缓冲区对象实际上是字节数组,这是一种同时表示字符和处理二进制数据的方法。你可以在网站上阅读更多关于它的信息 现在,由于“abc”实际上是三个ascii字符,每个字符只占一个字节,这个字节将对应于它的ascii码
[...Buffer('abc')]
结果是:
[ 97, 98, 99 ]
首先,考虑这段代码:
console.log([...[1, 2, 3]]); //[1, 2, 3]
Spread运算符将尝试获取一个数组并将其转换为参数列表
js的缓冲区对象实际上是字节数组,这是一种同时表示字符和处理二进制数据的方法。你可以在网站上阅读更多关于它的信息
现在,由于“abc”实际上是三个ascii字符,每个字符只占一个字节,这个字节将对应于它的ascii码。
你可以这样做:myString.charCodeAt(pos)
,在你的例子中'abc'。charCodeAt(0)
将返回97
所以
将实际返回一个数组,其中包含“abc”每个字符的ascii码。那就是[97,98,99]
由于缓冲区的编码默认为UTF-8,所以在处理unicode时,事情会变得更加令人兴奋
console.log([...Buffer('漢字')]); //[230 188 162 229 173 151]
对不起潜在的错误,希望这有帮助。 < P>首先,请考虑这段代码:
console.log([...[1, 2, 3]]); //[1, 2, 3]
Spread运算符将尝试获取一个数组并将其转换为参数列表
js的缓冲区对象实际上是字节数组,这是一种同时表示字符和处理二进制数据的方法。你可以在网站上阅读更多关于它的信息
现在,由于“abc”实际上是三个ascii字符,每个字符只占一个字节,这个字节将对应于它的ascii码。
你可以这样做:myString.charCodeAt(pos)
,在你的例子中'abc'。charCodeAt(0)
将返回97
所以
将实际返回一个数组,其中包含“abc”每个字符的ascii码。那就是[97,98,99]
由于缓冲区的编码默认为UTF-8,所以在处理unicode时,事情会变得更加令人兴奋
console.log([...Buffer('漢字')]); //[230 188 162 229 173 151]
很抱歉可能会出现打字错误,希望这能有所帮助