每天一遍,防止颓废。
本课程重点介绍服务端开发和前端开发思路上的区别,为后续的服务端开发做一个基础的铺垫。
课程内容
- nodejs是什么?
nodejs是什么?
一个基于chormev8引擎的JavaScript运行时
2009年发布,现已更新v18版本
现已广泛应用于开源社区和各种公司,特别是互联网公司
什么是chormev8引擎?
chorme是一个浏览器,它可以执行js代码
v8就是chorme的js引擎,以速度著称
nodejs也是基于js语法的,因此也可以借用v8引擎
什么是运行时?
代码的运行环境
有了运行时,代码能被执行
没有运行时,代码就是一堆静态文本,就像txt一样
nodejs出现之前
nodejs出现以前,只有浏览器可以和执行js 代码
浏览器主要显示网页,所有js也被当做网页的一部分
除此之外,没有其他应用场景,更别提做服务端
nodejs出现之后
除了浏览器,nodejs又是一个新的js运行时
哪里安装nodejs,哪里就可以运行js代码
可以用本机(如果使用webpack打包),也可以做服务端
如何使用nodejs做服务端?
安装nodejs
编写js代码(处理http请求
使用nodejs执行js代码
- 下载和安装
下载和安装
https://nodejs.cn 一直下一步,下一步OK
验证是否安安装成功
打开控制台,运行
mac控制台 terminal
Windows控制台cmd
node -v
npm -v
初体验
// 导入http包
const http = require('http')
const server = http.createServer((request, response) => {
const content = 'Hello Word'
response.end(content)
})
server.listen(3000)
- 使用npm
npm是什么?
npm软件包管理者(node package manager)
有几百万的软件包,开源免费
软件包有何用?
现代软件工程已经完善且成熟,项目不会从0开始写
必须搭配成熟的工具和框架才能满足需求,否则无人使用
每个成熟的开发语言或环境,都需要成熟的软件包体现
使用npm安装软件包
初始化
npm init -y
安装lodash
npm i lodash --saar
lodash使用测试
const _ = require('lodash');
const arr = [1, 2, 3]
const otherArr = _.concat(arr, 4, 5)
console.log(otherArr);
安装nodemon
修改代码自动重启server
npm install nodemon --save-dev
–save 和 --save-dev区别
–save 代码中课直接使用
–save-dev 不会到代码中用
查看已安装的包
npm list
安装指定版本
npm install <package>@<version>
卸载包
npm uninstall <package-name>
// --save
npm uninstall -S <package-name>
// --save -dev
npm uninstall -D <package-name>
// 全局
npm uninstall -G <package-name>
- commonjs模块化
语法介绍
module.exports 导出
require() 引入
语法主要用于nodejs开发
导出
function sum(a,b){
return a+b
}
module.exports = sum
引用
const sum = require('./utils')
const res=sum(10,20)
console.log(res)
区别
两者语法不一样
commonjs是执行时引入的,动态的
ES6 Module是打包时引入的,静态的
为什么要用模块化
模块拆分开,便于代码的组织和管理
便于多人开发,各写各的互不干扰
成熟的语言都支持模块化
-
debug
-
nodejs和js区别
两者都使用js语法
前端js使用浏览器提供的WEB API
nodejs使用nodejs API
心得体会
双越老师给我们讲了nodejs的基础知识,以及复习了ES6的模块化,以及Commonjs模块化和ES6的模块的区别,之前学过一点所有基础过得比较快,所以今天的学习就到这里啦