likes
comments
collection
share

手把手带你使用Node.js进行开发(一):安装与入门

作者站长头像
站长
· 阅读数 24

引言

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。

手把手带你使用Node.js进行开发(一):安装与入门


安装完成后,需要配置镜像源:在nvm的文件夹中找到setting.txt将以下镜像配置复制进去

node_mirror: http://npmmirror.com/mirrors/node/
npm_mirror: http://registry.npmmirror.com/mirrors/npm/

手把手带你使用Node.js进行开发(一):安装与入门


接着我们在cmd中执行nvm -v 查看我们安装的nvm版本号,检查安装是否成功。

手把手带你使用Node.js进行开发(一):安装与入门


2.使用nvm安装node.js

我们可以输入nvm list available查看可安装的node.js版本

手把手带你使用Node.js进行开发(一):安装与入门 其中CURRENT一列的是最新版本的node.js ,LTS一列是稳定版本。这里我们选择安装稳定版本中最新的版本

nvm install 20.16.0 //下载20.16.0版本的node.js

手把手带你使用Node.js进行开发(一):安装与入门


3.切换node.js的版本

nvm use 18.20.4 //使用18.20.4版本的node.js 前提得是已经安装好的

手把手带你使用Node.js进行开发(一):安装与入门

除此之外,我们还可以通过nvm ls 来查看当前已经安装过的所有node.js的版本,通过node -v来查看当前正在使用的node.js版本。

手把手带你使用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
评论
请登录