三十六、nodeJs

Node简介

**概念:**就是js运行环境,用来解析js代码

以前:在html文件中写js,通过浏览器来解析

现在:在js文件中写js,通过node来解析

作用:用来解析JS代码

用途:
1、写接口
2、写网站
3、写聊天室
4、写桌面应用

安装Node

步骤1:下载
在这里插入图片描述
步骤2:双击安装(ps. 除了安装目录外其他统一傻瓜式下一步)

在这里插入图片描述
在这里插入图片描述
步骤3:安装完毕测试
在这里插入图片描述
node初使用
在这里插入图片描述
1、通过node解析js代码
在这里插入图片描述
2、通过node解析js文件
在这里插入图片描述
以前浏览器解析JS代码:主要表单验证、网页特效(轮播图、手风琴等等)
在这里插入图片描述
现在Node解析JS代码:写接口、写网站、写聊天室、写桌面应用等
在这里插入图片描述

node的组成(CommonJS规范)

在这里插入图片描述

  • 一个文件就是一个模块

  • 通过exports和module.exports导出成员
    exports和module.exports区别:
    exports返回的是模块函数
    module.exports返回的是模块对象本身,返回的是一个类
    exports的方法可以直接调用
    module.exports需要new对象之后才可以调用
    module.exports默认会赋值给exports,所以module.exports可以赋值对象并调用出来,而给exports赋值对象就会将module.exports覆盖,所以不能直接调用。

  • 通过require导入成员

node基础使用

语法:
以后安装模块必须先:npm init -y 生成package.json文件(作用:项目所需模块

下载模块:npm i/install 模块名
卸载模块:npm uninstall 模块名

下载参数: -g 概念 -g全局、主要作用/效果 控制台可以输入命令

新语法

npm  安装node后自带的命令行工具
cnpm 淘宝团队开发(基于npm的          1-下载快,2-兼容性好 
yarn Facebook等团队成员(基于npm扩展  1-下载快,2-下载提示可读性略强,3-自动管理package.json等

安装
npm:不用安装,安装node自带 ,检查npm -v
cnpm*:http://npm.taobao.org/

 安装:npm i -g cnpm --registry=https://registry.npm.taobao.org
 校验:cnpm -v

yarn*

 安装:npm i yarn -g
 配置:yarn config set registry https://registry.npm.taobao.org
 验证:yarn -v

语法

 需要npm/cnpm init -y                  不用
 npm/cnpm install 	    	      /  yarn install
 npm/cnpm install 模块名            /  yarn add 模块名
 npm/cnpm uninstall 模块名	      	/  yarn remove 模块名
 npm/cnpm install 模块名 --save-dev /  yarn add 模块名 --dev
 npm/cnpm install 模块名 -g	        /  yarn global add 模块名
 npm config list 				  /  yarn global dir/list
 ----------------------------------------------------------------
 手册看区别:https://yarnpkg.com/zh-Hans/docs/migrating-from-npm

小总结

以前浏览器解析JS代码想要写出强大的功能:DOM和BOM

现在node解析JS支持DOM和BOM吗?:不支持

解决:模块

模块种类:内置、自己、第三方

模块规范:node用的commonjs规范

1-一个文件就是一个模块
2-通过exports或module.exports导出
**exports和module.exports区别:**
exports返回的是模块函数
module.exports返回的是模块对象本身,返回的是一个类
exports的方法可以直接调用
module.exports需要new对象之后才可以调用
**module.exports默认会赋值给exports,所以module.exports可以赋值对象并调用出来,而给exports赋值对象就会将module.exports覆盖,所以不能直接调>     用。**
3-通过require导入

模块系统(自定义Node模块)

需求:创建狗模块,导出成员姓名&吃方法

代码
在这里插入图片描述

模块系统(第三方Node模块)

概念:别人用commonjs安装自定义模块方式封装

步骤1(如何知道模块名?):百度 举例 node验证码模块

步骤2(如何用):
1-将模块名放到百度
2-将模块名放到 npmjs.com 搜索
3-node第三方模块仓库(npmjs.com)

步骤3(如何下载):通过node安装后自带的npm命令去下载

步骤4(下载之后怎么办):1-导入模块,2-根据手册调用方法

举例:
需 求:使用node查看文件mime类型的模块

步骤1:百度根据需求找模块(node验证码模块、node上传文件模块等)
在这里插入图片描述
步骤2:根据名字去npmjs.com搜 -> 详情右边下载,左下使用手册(目的看手册)
在这里插入图片描述
步骤3:下载

思考:package.json文件有几个作用

回答:

1-记录项目所需第三方模块

2-自己写第三方模块的时候使用

在这里插入图片描述
在这里插入图片描述
步骤4:文件中导入模块,调用方法
在这里插入图片描述

模块系统(内置Node模块)

内置模块os,url的使用:
在这里插入图片描述
内置模块http 创建web服务器
在这里插入图片描述
在这里插入图片描述
内置模块fs

fs.readFile(路径及文件名,‘utf8’, (err, data) => {})

fs.readFileSync(路径及文件名,‘utf8’)

fs.writeFile(路径及文件名,‘内容’, (err) => {})

fs.writeFileSync(路径及文件名,‘内容’)
在这里插入图片描述

大总结

node是什么:js运行环境用来解析js代码

能干吗:使js变得更强,能和后端平起平坐 写接口、网站等

去哪下:nodejs.cn (加入到浏览器书签)

安装:下载好,傻瓜式下一步安装,验证(node -v)

模块:内置、自定义、第三方

规范
commonjs

一个文件就是一个模块

通过exports和module.exports导出

通过require导入

验证发现官方模块也是一个个js文件

https://github.com/nodejs/node/tree/master/lib

其他:内置模块语法

url 获取get方式参数

url.parse(网址,true).query

http 创建web服务器

http.createServer((req, res) => {

​ req.url

​ res.setHeader()

​ res.end(内容)

}).listen(3000)

fs模块

fs.readFile(异步)

fs.readFileSync(同步)

fs.writeFile(异步)

fs.writeFileSync(同步)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值