node.js

目录

node.js基本介绍

node.js的注意点

node.js的模块化开发

模块化开发的形式

自定义模块

内置模块

第三方模块


node.js基本介绍


Node.js是一个基于Chrome V8 引擎的JAvascript运行环境。

JavaScript程序如果需要运行执行,必须要有JavaScript的运行环境。

window等操作系统不支持运行JavaScript程序,浏览器中浏览器内核/引擎可以支持JavaScript运行。

node.js是将谷歌浏览器 V8版本的内核独立出来,生成一个JavaScript程序的运行环境。也就是JavaScript可以在浏览器中运行,也可以在node.js中运行。

node.js的注意点


node.js中运行JavaScript,

可以运行ECMAScript、DOM、BOM。

不可以运行I/O线程操作,input输入、output输出,简单的理解就是不能操作本地文件和数据库文件。

node.js的特点:天生就是异步操作程序,适合做并发处理。

接下来,我们就简单的了解一下Node.js。

node.js的模块化开发


node.js和普通的js程序开发模式不同,模仿后端程序的模块化开发方式,采用的commonJS开发模式。

node.js模块化开发的语法形式:

将每一个独立的功能定义成一个js文件,使用专门的 导出 导入 语法形式。导出当前模块化文件中的数据,导入加载模块化文件中的数据。

模块化开发的优点:

1、数据更加安全,只能操作导出的数据。

2、加载依赖更加清晰。

3、加载顺序更加明确。

模块化开发的形式


1、自定义模块

程序员自己定义开发的模块化文件,只需要定义模块化文件和导出语句,其他文件通过导入数据 加载模块化文件导出的数据。

2、内置模块

nodejs自己开发的模块化文件,只需要 通过 导入语句 导入 nodejs开发好的模块化文件。

3、第三方模块

其他程序员定义开发的模块化文件,先下载模块化文件,再通过 导入数据 导入 其他程序员开发的模块化文件。

自定义模块


在 模块化文件中 以 固定的语法形式 导出 数据/函数。

在 执行文件中 以 固定的语法形式 导入 模块化文件中 导出的 数据/函数。

导出语法

module.exports = {};

以对象的语法形式使用属性属性值,导出数据/函数。

导入语法

const 变量 = require('路径');

按照指定的路径导入加载模块化文件中;如果没有导出的数据,那么就不能导入加载操作。

接下来,就举个例子,看看这两个语法是怎么使用的,如下所示:

//demo1.js是一个模块化文件
//定义了数据,导出数据
int bool = true;
let int = 100;
let float = 123.456;
let str = '北京';
const arr = [1,2,3];
const obj = {name:'王昭没有君啊' , age:18 , sex:'男'};
function fun1(){'王昭没有君啊'};
function fun2(){'王昭君'};
//导出语法,以对象形式,导出指定的数据/函数
module.exports = {
   bool: bool,
   int: int,
   //对象属性和属性值的简写语法
   //如果对象的属性和存储属性值的变量名称相同,写一个就行了
   flaot,
   arr: arr,
   obj: obj,
   fun1: fun1,
   fun2: fun2,
}
//demo2.js是一个执行文件
//导入 加载demo1.js模块化文件中 导出的数据

// 导入语法
const resObj = require('./demo1');

// 变量resObj 中以 对象形式 存储 模块化文件中导出的 数据 / 函数
// 以 对象的语法形式 操作
console.log(resObj.float);
console.log(resObj.obj);

resObj.fun1();
resObj.fun2();

内置模块


fs模块,读取设定外部文件内容的模块,是node.js一个内置模块,通过导入加载fs模块执行程序。

通过require('fs')导入fs模块,以对象的形式存储 node.js定义的fs模块导出的函数方法和数据。

关于内置模块,我们只需要通过require加载导入内置模块文件,调用使用函数方法。而且我们也只需要了解几个函数方法就行。如下所示:

readFile(参数1,参数2,参数3);
读取外部文件内容的函数方法,异步程序
参数1  读取外部文件的路径
参数2  读取外部文件的编码格式,默认是Buffer格式是两位十六进制数值形式
参数3  function(参数1 , 参数2){}

       参数1 读取外部文件的报错信息
             如果读取成功报错信息是null

       参数2 读取外部文件的内容信息
             如果读取失败,内容信息是undefined
writeFile(参数1,参数2,参数3)
写入外部文件内容的函数方法,异步程序
参数1 写入文件的路径
      如果文件存在,向文件中写入内容
      如果文件不存在,创建文件写入内容

参数2 写入文件的内容
      必须是字符串格式
参数3 function(){}
readFileSync(参数1,参数2,参数3);
读取外部文件内容的函数方法,同步程序
参数1  读取外部文件的路径
参数2  读取外部文件的编码格式,默认是Buffer格式是两位十六进制数值形式
参数3  function(参数1 , 参数2){}

       参数1 读取外部文件的报错信息
             如果读取成功报错信息是null

       参数2 读取外部文件的内容信息
             如果读取失败,内容信息是undefined
writeFileSync(参数1,参数2,参数3)
写入外部文件内容的函数方法,异步程序
参数1 写入文件的路径
      如果文件存在,向文件中写入内容
      如果文件不存在,创建文件写入内容

参数2 写入文件的内容
      必须是字符串格式
参数3 function(){}

内置模块只要通过require加载导入内置模块文件,调用使用函数方法就可以了。

//执行文件加载导入执行fs文件
const fs = require('fs');

第三方模块


node.js使用的是commentJS模块化开发模式。

使用 module.exports = {} 语法形式导出数据和函数

使用 const 变量 = require('路径') 导入数据和函数

第三方依赖包/模块,是其他程序员定义好的模块化文件,其中定义了 数据和函数,需要下载导入 之后,使用其他程序员定义好的 导出的内容。

第三方依赖包的下载,nodejs 给我们提供了专门的下载 依赖包的服务器,通过nodejs自带的下载工具 npm 来下载依赖包,npm默认使用的是美国服务器地址,一般会修改为 中国淘宝镜像地址。

设定程序 npm config set registry https://registry.npm.taobao.org

cnpm国内程序员编辑的中国国内下载方式,可以代替 npm 下载依赖包。

cnpm的配置下载  npm install -g cnpm --registry=https://registry.npm.taobao.org

配置 cnpm 之后,可以使用命令 cnpm i -g sass

但是 有些依赖包 只能使用 npm 下载,有些 依赖包 只能使用 cnpm 下载。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王昭没有君啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值