从节点文档中,我尝试了一些来自Buffer的代码。当我执行此语句时
Buffer
const buf = Buffer.from('hello world', 'ascii');
它抛出一个异常:TypeError: Buffer.alloc is not a function我的节点版本是v5.7.1。我不明白为什么?这是错误屏幕。
TypeError: Buffer.alloc is not a function
j2cgzkjk1#
新的Buffer API仅在v5.10.0+中可用,因此您需要升级才能使用它。如果您想查看v5.7.1的文档,可以转到here。FWIW新的Buffer API现在也可以在v4.5.0的节点v4.x中使用。
tvokkenx2#
此错误是由于节点版本不匹配而发生的,因此请在我的机器上安装节点版本,如下所示:
sudo npm cache clean -f sudo npm install -g n sudo n stable
gblwokeq3#
如果你能做这些命令,它应该是工作。第一步:首先,您可以键入以下命令sudo npm cache clean -f第2步:现在,您可以键入以下命令sudo npm install -g n第三步:现在,您应该输入以下命令sudo n 6.4.0第四步:最后,您应该输入此命令以重新启动系统或重新引导shutdown -h now
sudo npm cache clean -f
sudo npm install -g n
sudo n 6.4.0
shutdown -h now
vngu2lb84#
如果你不想重新启动,你可以这样做:
sudo apt install curl curl -sL https://deb.nodesource.com/setup_10.x | sudo bash - sudo apt install nodejs node -v
这里的说明:https://websiteforstudents.com/install-the-latest-node-js-and-nmp-packages-on-ubuntu-16-04-18-04-lts/
yv5phkfx5#
不知道什么原因,我的alloc函数少了几个对象。请验证console.log(Buffer)
let Buffer = require('buffer'); console.log(Buffer) data = Buffer.Buffer.alloc(0);
mv1qrgav6#
我也遇到过同样的问题。只要做Buffer.Buffer.alloc(),它就可以正常工作了:)希望能有所帮助
Buffer.Buffer.alloc()
6条答案
按热度按时间j2cgzkjk1#
新的
Buffer
API仅在v5.10.0+中可用,因此您需要升级才能使用它。如果您想查看v5.7.1的文档,可以转到here。
FWIW新的
Buffer
API现在也可以在v4.5.0的节点v4.x中使用。tvokkenx2#
此错误是由于节点版本不匹配而发生的,因此请在我的机器上安装节点版本,如下所示:
gblwokeq3#
如果你能做这些命令,它应该是工作。
第一步:
首先,您可以键入以下命令
sudo npm cache clean -f
第2步:现在,您可以键入以下命令
sudo npm install -g n
第三步:
现在,您应该输入以下命令
sudo n 6.4.0
第四步:
最后,您应该输入此命令以重新启动系统或重新引导
shutdown -h now
vngu2lb84#
如果你不想重新启动,你可以这样做:
这里的说明:https://websiteforstudents.com/install-the-latest-node-js-and-nmp-packages-on-ubuntu-16-04-18-04-lts/
yv5phkfx5#
不知道什么原因,我的alloc函数少了几个对象。请验证console.log(Buffer)
mv1qrgav6#
我也遇到过同样的问题。
只要做
Buffer.Buffer.alloc()
,它就可以正常工作了:)希望能有所帮助