Node.js概述

简介: Node.js概述
  1. Node.js简介
    Node.js是一个基于Chrome V8引擎的JavaScript运行环境。

地址:Node.js 中文网

1.1 Node.js中的JavaScript运行环境
(1)浏览器是JavaScript的前端运行环境

(2)Node.js是JavaScript的后端运行环境

(3)Node.js中无法调用DOM和BOM等浏览器内置的API

1.2 Node.js的下载与安装
(1)Node.js的下载

下载 Node.js

(2)Node.js的安装

双击默认安装

(3)查看已安装Node.js的版本号

node -v

  1. 模块化
    模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。对于整个系统来说,模块是可组合、分解和更换的单元。

2.1 模块分类
Node.js中根据模块来源不同,将模块分为三大类:

(1)内置模块

内置模块是由Node.js官方提供的,例如fs、path、http等。

(2)自定义模块

用户创建的每个.js文件,都是自定义模块。

(3)第三方模块(又称为:包)

由第三方开发出来的模块,并非官方提供的内置模块,也不是用户创建的自定义模块,使用前需要先下载。

2.2 模块加载
使用require() 方法,可以加载需要的内置模块、用户自定义模块、第三方模块进行使用。


注意:使用 require() 方法加载其它模块时,会执行被加载模块中的代码。

2.3 module对象
在每个 .js 自定义模块中都有一个 module 对象,它里面存储了和当前模块有关的信息,打印如下:

2.4 module.exports对象
在自定义模块中,可以使用 module.exports对象,将模块内的成员共享出去,供外界使用。

外界用require()方法导入自定义模块时,得到的就是module.exports所指向的对象。

2.5 exports对象
由于module.exports单词写起来比较复杂,为了简化向外共享成员的代码,Node提供了exports对象。默认情况下,exports和module.exports指向同一个对象(只是初始状态,如果exports或module.exports指向发生改变,则指向不同步)。最终共享的结果,还是以module.exports指向的对象为准。

注意:为了防止混乱,建议大家不要在同一个模块中同时使用exports和module.exports

2.6 CommonJS模块化规范
Node.js遵循了CommonJS模块化规范,CommonJS规定了模块的特性和各模块之间如何相互依赖。

CommonJS规定:

(1)每个模块内部,module变量代表当前模块。

(2)module变量是一个对象,它的exports属性(即module.exports)是对外的接口。

(3)加载某个模块,其实是加载该模块的module.exports属性。require()方法用于加载模块。

  1. 内置API模块
    3.1 fs文件系统模块
    fs模块是Node.js官方提供的、用来操作文件的模块,它提供了一系列的方法和属性,用来满足用户对文件的操作需求。

fs.readFile(...) // 读取

fs.writeFile(...) // 写入
3.2 http模块
http模块是Node.js官方提供的、用来创建web服务器的模块。

// 创建web服务器

http.createServer()
3.3 path路径模块
path模块是Node.js官方提供的、用来处理路径的模块。它提供了一系列的方法和属性,用来满足用户对路径的处理需求。

(1)path.join() 方法

用来将多个路径片段拼接成一个完整的路径字符串

相关文章
|
6月前
|
Nodejs的模块化概述
详细解释Node.js的模块化概念,包括CommonJS规范、模块的引用、定义、标识,以及如何在Node.js中实现模块化,并通过示例代码展示了如何创建和使用模块,以及"module.exports"和"exports"的区别。
59 1
Nodejs的模块化概述
JavaScript数据类型概述及Undefined与Null详解
JavaScript数据类型概述及Undefined与Null详解
Vue.js概述
Vue.js概述
N..
110 2
编程笔记 html5&css&js 036 CSS概述
编程笔记 html5&css&js 036 CSS概述
Vue Nuxt.js 概述
Vue Nuxt.js 概述
126 0
JavaScript-JavaScript概述及简单使用
JavaScript-JavaScript概述及简单使用
141 0

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等