电子书举荐
Multithreaded JavaScript: Concurrency Beyond the Event Loop
Computers For Seniors For Dummies, 6th Edition
Mastering Large Datasets with Python
Learning Vulkan
NGINX Cookbook
Machine Learning Refined
Distributed Systems with Node.js: Building Enterprise-Ready Backend Services
Programming PyTorch for Deep Learning: Creating and Deploying Deep Learning Applications
Python For Offensive PenTest
Python Interviews: Discussions with Python Experts
Python Web Scraping
Refactoring at Scale: Regaining Control of Your Codebase
SQL Cookbook: Query Solutions and Techniques for All SQL Users, 2nd Edition
The Algorithm Design Manual
Web Development with ReasonML
Mastering Active Directory: Design, deploy, and protect Active Directory Domain Services for Windows Server 2022, 3rd Edition
Microsoft Excel Step by Step (Office 2021 and Microsoft 365)
JavaScript Syntax and Practices
Web Application Security: Exploitation and Countermeasures for Modern Web Applications
CompTIA PenTest+ PT0-002 Cert Guide, 2nd Edition
WebAssembly in Action
Advanced Python Development
在开始应用Node.js之前,你必须设置好你的开发环境。尽管开发环设置起来非常容易,但也有一些留神 事项须要思考,包含是否应用包管理系统装置Node.js,满足装置本地代码Node.js包的要求,以及抉择哪 款编辑器开发Node.js。在接下来的章节中,咱们将学习如何部署开发环境进行和非生产境进。
在本章中,咱们将学习以下内容。
- 如何在Linux、macOS或Windows上应用源代码和预包装的二进制文件中装置Node.js
- 如何装置node包管理器(npm)和其余一些常用工具 Node.js的模块零碎
- Node.js的模块零碎
- ECMAScript委员会对Node.js和JavaScript语言的改良
# 零碎要求
Node.js能够运行在POSIX类操作系统、各种UNIX衍生零碎(例如Solaris)、类UNIX操作系统(例 如Linux、macOS等)以及Microsoft Windows上。它也能够在大型和小型机器上运行,包含微型ARM设 备,如Raspberry Pi——一种用于DIY软件/硬件我的项目的微型嵌入式计算机。
Node.js当初能够通过包管理系统取得,从而缩小了应用源代码处编译和装置的须要。
因为许多Node.js包是用C或C++编写的,所以必须要应用C编译器(例如GCC)、Python 2.7(或以 后)和node-gyp包。因为Python2将在2019年底完结保护,Node.js社区正在从新编写兼容Python3的工 具。如果你打算在Web代码中应用加密性能,则还须要OpenSSL加密库。古代UNIX衍生糸统简直都携带 这些工具,应用源代码装置时Node.js时,Node.js配置脚本将检测到这些工具是否存在。如果您须要安 装,Python能够从http://python.org下载,OpenSSL可从http://openssl.org下载。
当初咱们曾经介绍了运行Node.js的环境要求,让咱们学习如何装置Node.js。
应用包管理器(Package Manager)装置Node.js
装置Node.js的首选办法是应用包管理器提供的版本,如apt get或MacPorts。软件包管理器用于维 护计算机上的软件的以后版本,确保在必要时更新依赖的包,使您的开发工作更加轻松,所有这 些都通过输出一个简略的命令实现,如apt get update。让咱们先从软件包管理系统理解一下安 装过程。
无关从package Manager装置的正式阐明,请拜访https://nodejs.org/en/downloa...。
应用MacPorts在macOS上装置Node.js
MacPorts我的项目(http://www.macports.org/)多年来始终在为MacOS零碎打包了一系列开源软件 包,包含Node.js。默认状况下,MacOS零碎的治理命令装置在/opt/local/bin下。在你应用用MacPorts网站上的安装程序装置MacPorts后,装置Node.js非常简单。咱们能够在MacPorts安
装命令目录中装置Node.js二进制文件:
$ port search nodejs npm...nodejs8 @8.16.2 (devel, net)Evented I/O for V8 JavaScriptnodejs10 @10.16.3 (devel, net) Evented I/O for V8 JavaScriptnodejs12 @12.13.0 (devel, net) Evented I/O for V8 JavaScriptnodejs14 @14.0.0 (devel, net) Evented I/O for V8 JavaScript ...npm6 @6.14.4 (devel) node package manager$ sudo port install nodejs14 npm6.. long log of downloading and installing prerequisites and Node $ which node/opt/local/bin/node$ node --versionv14.0.0
如果已依照设置MacPorts的阐明进行操作,则MacPorts目录已在PATH环境变量中。运 行node、npm或npx命令则非常简单。这证实Node.js曾经装置,并且装置的版本合乎您的要求。 MacPorts不是治理macOS上开源软件包的惟一工具。
应用 Homebrew 在macOS上装置Node.js
Homebrew是macOS的另一个开源软件包管理器,有人说它是MacPorts的完满替代品。Homebrew主 页:http://brew.sh/。依据Homebrew网站阐明装置Homebrew并确保其设置正确后,请应用以下代 码:
$ brew update... long wait and lots of output$ brew search node==> Searching local taps...node libbitcoin-node node-build node@8 nodeenv leafnode llnode node node@10 node@12 nodebrew nodenv ==> Searching taps on GitHub... caskroom/cask/node-profiler==> Searching blacklisted, migrated and deleted formulae...
而后,按如下形式装置Node.js:
$ brew install node...==> Installing node==> ownloading https://homebrew.bintray.com/bottles/node-14.0.0_1.high_sierra.bottle. tar.gz ########################... 100.0%==> Pouring node-14.0.0_1.high_sierra.bottle.tar.gz==> CaveatsBash completion has been installed to: /usr/local/etc/bash_completion.d==> Summary /usr/local/Cellar/node/14.0.0_1: 4,660 files, 60MB
与MacPorts一样,Homebrew将命令装置在一个公共目录下,默认为/usr/local/bin。如果你曾经按 照Homebrew的阐明将该目录增加到你的PATH变量中,请按以下形式运行Node.js命令:
$ node --version v14.0.0
这阐明Node.js曾经装置,而且装置的版本与你要求的相符。 当然,macOS只是咱们可能应用的泛滥操作系统中的一个。
应用包管理系统在Linux、*BSD或Windows上装置Node.js
Node.js当初能够通过大多数包管理系统装置。Node.js网站目前列出了一长 串Linux、FreeBSD、OpenBSD、NetBSD、macOS甚至Windows的Node.js打包版本。访 问https://nodejs.org/en/downloa... 理解更多信息。
例如,在Debian和其余基于Debian的Linux发行版(如Ubuntu)上,应用以下命令:
$ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -[sudo] password for david:## Installing the NodeSource Node.js 14.x repo...## Populating apt-get cache...... much apt-get output## Run `sudo apt-get install -y nodejs` to install Node.js 13.x and npm ## You may also need development tools to build native addons: sudo apt-get install gcc g++ make$ sudo apt-get install -y nodejs... Much output$ sudo apt-get install -y gcc g++ make build-essential ... Much output
这会将NodeSource APT存储库增加到零碎中,更新包数据,并筹备零碎,以便您能够装置Node.js包。 它还领导咱们如何装置Node.js以及所需的编译器和开发人员工具。
要下载其余Node.js版本(此示例显示版本14.x),请批改响应的URL:
$ node --version v14.0.0
这些命令将装置在/usr/bin目录中,咱们能够测试下载的版本是否合乎咱们的要求。
Windows 10内置零碎Linux零碎工具,简称WSL。Windows开始成为适宜Unix/Linux极客应用的零碎。
在WSL中装置Node.js
WSL容许您在Windows上装置Ubuntu、openSUSE或SUSE Linux Enterprise。所有这三个都能够通 过Windows 10内置的商店下载。您可能须要更新Windows设施以能力应用WSL。为了获得最佳体验,请 装置WSL2,这是对WSL的一次重大改良,提供了Windows和Linux之间更好的集成。
装置WSL后,Linux特定的阐明将在Linux子系统中装置Node.js。
**要装置WSL,请参阅https://msdn.microsoft.com/en... commandline/wsl/install-win10。
要理解和装置WSL2,见https://docs.microsoft.com/ en-us/windows/wsl/wsl2-index。**
该过程可能须要晋升Windows上的权限。
在Windows应用 治理 员权限关上PowerShell
在Windows上装置工具时运行的某些命令须要在具备晋升权限的PowerShell窗口中执行。我之所以提到 这一点,是因为在启用WSL的过程中,须要在PowerShell窗口中运行命令。
过程很简略:
- 在“开始”菜单中,在应用程序的搜寻框中输出PowerShell。弹出的菜单将列出PowerShell。
- 右键单击PowerShell选项。
- 弹出的上下文菜单将有一个名为“以管理员身份运行”的选项,点击这个选项。
生成的命令窗口将具备管理员权限,标题栏将显示管理员:Windows PowerShell。
在某些状况下,您可能无奈应用包管理系统装置Node.js。