手把手带你使用Node.js进行开发(一):安装与入门
引言
Node.js(简称node)是一个JavaScript的运行环境,它是基于chrome的V8引擎打造的。
-
我们都知道,JavaScript是一门典型的前端编程语言,通过node就使得开发者可以使用JavaScript编写服务器端的应用程序。
-
Node.js社区维护了一个庞大的包管理器npm,通过npm可以轻松获取和管理大量的第三方模块。
-
node中应用CommonJS规范,以实现代码的模块化。随着node版本的更新,现在node也支持ES Modules规范。
安装
在这里,为了能让我们在后续的开发中更方便地安装并管理node,我们直接下载一个管理工具nvm。
1.安装nvm管理工具
在安装nvm之前,如果我们的电脑里已经安装过node,得先把原来的node删除卸载。
这是nvm的下载地址github.com/coreybutler… 我们下载并解压nvm的zip。
安装完成后,需要配置镜像源:在nvm的文件夹中找到setting.txt
将以下镜像配置复制进去
node_mirror: http://npmmirror.com/mirrors/node/
npm_mirror: http://registry.npmmirror.com/mirrors/npm/
接着我们在cmd中执行nvm -v
查看我们安装的nvm版本号,检查安装是否成功。
2.使用nvm安装node.js
我们可以输入nvm list available
查看可安装的node.js版本
其中CURRENT一列的是最新版本的node.js ,LTS一列是稳定版本。这里我们选择安装稳定版本中最新的版本
nvm install 20.16.0 //下载20.16.0版本的node.js
3.切换node.js的版本
nvm use 18.20.4 //使用18.20.4版本的node.js 前提得是已经安装好的
除此之外,我们还可以通过nvm ls
来查看当前已经安装过的所有node.js的版本,通过node -v
来查看当前正在使用的node.js版本。
4.卸载某个版本的node.js
如果我们想卸载某个版本的node.js,可以直接nvm uninstall 18.20.4
。
入门
CommonJS
前面我们讲到CommonJS规范,它能让我们在node.js中实现代码的模块化。举个简单的例子,当我们在math.js中定义了以下函数:
function add(a, b) {
return a+b;
}
function minus(a, b) {
return a-b;
}
如果我们想在index.js中使用这两个函数,我们就不需要重新定义,只需要在math.js里导出模块,在index.js里导入模块即可。
导出模块
在CommonJS规范中,我们有两种办法导出模块。
module.exports
: 它可以导出几乎所有类型的数据:基本数据类型,引用数据类型和类等。
function add....
function minus....
module.exports = {
add; // add: add;
minus; // minus: minus;
}
exports
: 它实际上是一个module.exports
的引用,它默认会导出一个对象。使用exports会让代码更加简洁,因为你可以逐个导出。
exports.hello = 'world'
这样,我们就导出了一个key为hello
,值为'world'
的对象
覆盖问题:如果你在代码中同时使用了exports和module.exports,并且没有正确地处理,可能导致意料之外的效果,例如:
exports.a = 'hello';
module.exports = { b: 'world' };
在这个例子中,exports.a
将不会被导出,因为 module.exports
被重设为了一个新的对象 { b: 'world' }
。这意味着 exports
的引用被改变了,原来的属性 a
不再存在。
所以我们通常使用module.exports来默认导出一个对象或函数,也可以通过赋值给一个对象来定义多个导出;通常使用exports来逐个导出方法或属性。
导入模块
我们使用require()
来加载模块
- 加载自己导出的模块:比如加载上面的math.js导出的模块
const math = require('./math.js'); //通过文件路径的方式导入
console.log(math.add(1,2)); // 3
console.log(math.minus(3,1)); // 2
- 导入node.js的内置模块:比如
fs
(文件系统模块)、http
(HTTP 模块)等
const fs = require('fs');
- 导入第三方模块:通常是社区开发并通过npm发布出来的第三方模块,我们得先通过npm把第三方模块安装到项目中,再用
require()
来导入
//npm install lodash
const _ = require('lodash');
const arr = [1, 2, 3];
const result = _.map(arr, num => num*2); // result为[2, 4, 6]
结束
以上就是对Node.js的初步介绍与安装步骤,后续还会带来常用的node的实战项目等干货知识,希望能对大家有帮助!!
转载自:https://juejin.cn/post/7395399245371424803