【nodejs-BUFFER已弃用】报错BUFFERnew Buffer弃用弃用原因替换方法报错BUFFER
const buf =new Buffer(JSON.stringify("{'name':'jack'}"));
var Buffer: BufferConstructor
new (str: string, encoding?: BufferEncoding) => Buffer (+5 overloads)
Allocates a new buffer containing the given {str}.
@param str — String to store in buffer.
@param encoding — encoding to use, optional. Default is ‘utf8’
@deprecated — since v10.0.0 - Use Buffer.from(string[, encoding]) instead.
“Buffer”的签名“(str: string, encoding?: BufferEncoding): Buffer”已弃用。ts(6387)
buffer.d.ts(187, 16): 该声明曾在此处标记为已弃用。
var缓冲区:缓冲构造器
new (str:字符串,编码?:BufferEncoding) = >缓冲区(+5过载)
分配包含给定{str}的新缓冲区。
@ param str要存储在缓冲区中的字符串。
@ param encoding要使用的编码,可选。默认为“utf8”
@ deprecated从v10.0.0开始-改用Buffer.from(string[,encoding])。
"缓冲"的签名”(str:字符串,编码?:BufferEncoding):缓冲"已弃用ts(6387)
buffer.d.ts(187,16):该声明曾在此处标记为已弃用。
new Buffer弃用
而new Buffer在JavaScript的TypedArray出现后,Buffer类实现Uint8Array的方式,是更优化和适合Node.js的API。所以目前new Buffer的方式已经弃用。
弃用原因
在6.0.0之前的Node.js版本中,Buffer使用Buffer构造函数创建实例,该函数Buffer根据提供的参数分配不同的返回值:
由于行
为new Buffer()
因第一个参数的类型而异,因此在Buffer不执行参数验证或初始化时,可能会无意中将安全性和可靠性问题引入应用程序。为了使创建Buffer实例更为可靠,不容易出错,各种形式的new Buffer()构造已经被弃用 ,并通过独立的更换
Buffer.from()
,
Buffer.alloc()
和
Buffer.allocUnsafe()
方法。
具体看:勇敢*牛牛的Node.js的Buffer(缓冲区)和Stream 操作点击:勇敢*牛牛的Node.js的Buffer(缓冲区)和Stream
替换方法
const buf = Buffer.from(JSON.stringify("{'name':'jack'}"));
本网站发布或转载的文章均来自网络,其原创性以及文中表达的观点和判断不代表本网站。
本文地址:https://www.henghost.com/jishu/21318/