node.js 和 node 有啥区别?
Posted
技术标签:
【中文标题】node.js 和 node 有啥区别?【英文标题】:What are the differences between node.js and node?node.js 和 node 有什么区别? 【发布时间】:2013-12-02 04:38:57 【问题描述】:我已经在我的机器(linux mint 15)中安装了 node.js,当我运行 node example.js
时,它说:
The program 'node' can be found in the following packages:
* node
* nodejs-legacy
Try: sudo apt-get install <selected package>
那么node和nodejs有什么区别呢?我之前安装了 node.js 和 node,但是当我运行 node example.js
时,Web 服务器根本没有启动。所以我删除了节点并保留了node.js。
【问题讨论】:
相关帖子 - What is the difference between node.js runtime and npm package manager options while installing node.JS? 【参考方案1】:包节点与node.js无关。
nodejs
是您想要的,但是最好将该命令称为 node 以与使用 #!/usr/bin/env node
的脚本兼容。
您可以在路径中创建符号链接:
sudo ln -s `which nodejs` /usr/local/bin/node
或者你可以install nvm,然后用它来安装最新版本的node.js:
nvm install stable
我更喜欢 nvm 方法,因为它允许您 sudo apt-get remove nodejs
,然后管理您自己使用的节点版本。您还可以安装多个版本的 node.js 并使用nvm use <version>
在它们之间轻松切换。
我还想在.bashrc
的底部添加一行,例如:nvm use stable > /dev/null
。这将自动使用您已安装的最新版本。
要将您的节点版本更新到最新的稳定版:nvm install stable
。每次执行此操作时,如果您想继续使用它们,您将需要安装您已全局安装的任何 npm 包。
要切换到旧版本,只需运行 nvm use <version>
,或者,如果您尚未安装旧版本:nvm install <version>
。
【讨论】:
实际上,nodejs-legacy
包只包含符号链接(另请参阅lists.debian.org/debian-devel-announce/2012/07/msg00002.html)。
非常有用和方便的是 nvm 包。
在 JS 世界里,人们一直在调用 node;在那种情况下,它是指 node.js 吗?
@vikramvi 是的,当你在这里人们谈论 node 时,他们可能指的是 node.js;浏览器中的那个或 DOM 节点【参考方案2】:
这个答案只是为了告诉你node
和 nodejs
软件包在 Debian 操作系统上的区别。
node
业余分组无线电节点程序。
包详情链接:https://packages.debian.org/source/wheezy/node
nodejs
Node.js 是一个基于 Chrome 的 javascript 运行时构建的平台,用于轻松构建快速、可扩展的网络应用程序。 Node.js 使用事件驱动的非阻塞 I/O
模型,使其轻量级和高效,非常适合跨分布式设备运行的数据密集型实时应用程序。
包详情链接:
https://packages.debian.org/source/sid/nodejs
【讨论】:
解释node
和nodejs
之间实际区别的答案。
通俗易懂怎么理解两者的区别?
@steady_daddy 这两个包是互不相关的,所以简单的回答是两者互不相关。 nodejs 是一个现代的面向 javascript 的服务器框架,通常用于提供各种服务和实时应用程序,而 node 是一个较旧的框架,用于通过业余无线电传输数据包。大多数安装将shell命令“node”符号链接到二进制“nodejs”,这通常是安全的,因为几乎没有人使用nodejs会遇到与“node”的冲突。【参考方案3】:
答案很简单。
-
Node.JS 是 脚本/代码
Node 编译并运行 Node.JS
【讨论】:
以上是关于node.js 和 node 有啥区别?的主要内容,如果未能解决你的问题,请参考以下文章
node.js 中的 __dirname 和 ./ 有啥区别?
Node.js 中的 fs.ReadStream 和 fs.createReadStream 有啥区别吗?