node.js概述

node.js介绍

相关网址:javascript

https://nodejs.org/zh-cn/html

http://nodejs.cn/前端

Node.js 是一个开源与跨平台的JavaScript运行时环境。它是在浏览器外运行,它是一个事件驱动异步I/O单进程的服务端JS环境,基于Google的V8引擎,V8引擎执行Javascript的速度很是快,性能很是好。它使用新的 ECMAScript标准,没必要等待全部用户更新其浏览器,能够经过更改其版原本决定要使用新的标准特性。vue

注意:java

浏览器是JS的前端运行环境。node

Node.js是JS的后端运行环境,在后端中运行没法调用 DOM 和 BOM 等浏览器内置 API。react

nodejs调用服务查看服务器相关api gulp基础node环境webpack

node应用场景

建立应用服务git

web开发(后端)github

接口开发(小程序)

客户端应用工具gulp、webpack、vue脚手架、react脚手架、小程序

模块化

NodeJs基于Commonjs模块化开发的规范,它定义一个JS文件就称之为一个模块

commonJS 使用 exports 导出模块, require 导入模块。

只有将变量导出以后,其余文件才能可以使用。

1  //将模块进行导入
2  module.exports.time = time

具体规范以下:

一、若是 js 文件中存在 exports 或 require,该 js 文件 是一个模块。

二、模块内的全部代码均为 隐藏代码,包括 全局变量、全局函数,这些全局的内容 均不该该对全局变量形成污染。

三、若是一个模块须要暴露一些API给外部使用,须要经过exports 导出,exports 是一个空对象,你能够为该对象添加任何须要导出的内容。

四、若是一个模块须要导入其余模块,经过require 实现,require 是一个函数,传入模块的路径便可返回该模块导出的整个内容。

nodejs对commonJS的实现

为了实现CommonJS 规范, nodejs 对模块 作出了如下处理

一、为了保证高效的执行,进行加载必要的模块。nodejs 执行到require 函数时才会加载并执行。

二、为了隐藏模块中的代码,nodejs 执行模块时,会将模块中的全部放到一个函数中执行,以保证不污染全局变量。

三、为了保证顺利的导出模块内容,nodejs 作了如下处理:

1. 在模块开始执行前,初始化一个值 module.exports = {}

2.module.exports是模块导出之一

3.为了方便开发者便捷的导出,nodejs 在初始化 完成module.exports后,有声明了一个变量exports = module.exports

4.为了不反复加载同一个模块,nodejs 默认开启了模块缓存功能,若是已经加载过的模块,则会自动使用以前的导出结果。

 nodejs的模块类型

  • 核心(内置)模块 - 安装nodejs自带的模块
  • 第三方模块 - 须要手动经过(npm/yarn)来进行安装
  • 自定义模块 - 开发者本身编写开发
modelue.exports/export  //导出
require(模块名称) //导入

nodejs的安装

nodejs环境安装很是便捷,直接可经过官网地址,下载对应的安装软件包便可安装使用。

若是在工做中有多个node环境的切换,能够安装ndoe环境管理工具NVM:https://github.com/coreybutler/nvm-windows/releases

nvm可让你的电脑中有N多个node版本。

相关文章
相关标签/搜索