nodeJs是什么:
- 基于Chrom V8 引擎的javascript运行时
2.2009年发布的、现在已经更新到了v12
node.js的安装:node.js.cn网站安装node
node.js怎么去运行:
1.当前文件夹打开控制台,执行node index.js
2.在浏览器中打开 localhost:3000进行监听
npm是什么:
1.node package manager,即nodejs软件包管理者
3.有几百万的软件包,开源免费
软件包有何用:
1.现代软件工程已经完善且成熟,项目不会从0开始写
2.必须搭配成熟的工具和框架才能满足需求,否则将无人使用
3.每个成熟的开发语言或者环境,都需要成熟的软件包体系
开始使用npm
npm会随着nodejs一起被安装
1.首先要初始化环境:npm init
2.其次,安装插件
npm i lodash --save 安装lodash
npm i nodemon --save-dev 安装nodemon
nodemon插件使用演示:
修改配置:
npm run dev 启动、localhost:3000访问。
--save和 --save-dev的区别:
1.--save安装的插件在package.json文件的dependencies对象中
2.--save-dev安装的插件在package.json文件的devDependencies对象中
devDependencies是开发环境使用,dependencies是生产环境使用。
例如webpack,babel等工具,这些是我们开发阶段使用的,代码提交线上时,不需要这些工具,所以我们将它放入devDependencies即可。但是像axios,vuex这类工具,是我们生产环境所使用的,所以要放入dependencies,即使项目上线后也是需要的。
common.js模块化
es6 moudle
◆export .... 或 export default ...
◆import .. from ...
1、在一个文件里只导出一个内容,直接在最后使用export default xxx;
使用时,在要使用的文件中的script标签里引入,使用import xxx from ‘路径’
2、在一个文件里导出多个内容,比如导出多个函数,直接在定义的函数前面加上export即可;
使用时在要使用的文件中的script标签里,使用import { a,b } from ‘路径’,例如a,b就是导出的内容名 字,比 如图中内容就是import { sum, test } from "./utils";
commonjs语法介绍
◆module.exports【输出】
◆require(..)【输入】
◆主要用于nodejs开发
require的三个层级
commontjs和es6 module的区别:
语法不一样、commontjs是执行时候引入的,是动态的;module是打包时候引入,是静态的(imprt不可以放在if中,要放在最顶层)
commonjs可以在if语句中引入,可以执行时再引入,它是动态的;而ES6 Module必须在最顶层引入,不能在if语句中引入,要提前把所有内容引入才能执行,是静态的。图示:
模块化的意义:拆分便于管理,便于多人协作开发,成熟的语言都支持模块化
什么是debug
◆bug 即错误
◆debug即排错,也叫调试
◆编程语言,必须有成熟的debug机制,否则将不可用
inspect调试法
1.修改scrtips,增加--inspect,启动服务
2.打开chrome,访问chrome://inspect
3.增加debugger,重启服务,即可调试
*****具体操作*****:
1、增加--inspect,如"dev": "nodemon --inspect=9229 index.js"
2、在命令窗口进入文件夹,使用npm run dev启动服务
3、访问chrome://inspect,然后点击页面中Target中的index.js下的inspect,就可以监听nodejs的服务【在代码中做了修改以后,要把打开的inspect窗口关闭,在chrome://inspect中重新打开inspect窗口才能看到新的打印结果】
4、在代码中添加debugger即可设置断点,程序执行到这里会断一下,然后一步一步往后执行。
打开inspect窗口,再在localhost的界面刷新一下,inspect窗口就会自动弹出并切换到Sources</article>