**
1.什么是Node.js**
:就是Javascript的服务器端运行环境,可以让我们使用Javascript来实现服务器端的编程
2. Node.js 中 Javascript 的组成部分
- ECMAScript 核心 + 全局成员 + 核心 API 模块
- 全局成员:console、setInterval、setTimeout。。。
- 核心 API 模块:就是 Node 平台 单独提供的一些API,这些API是Node平台所独有的;
3. 注意:Node.js 中 没有 BOM 和 DOM
- 由于 Node 服务器端运行环境中,没有浏览器 和 HTML 的概念,所以,Node中的javascript 提出了 DOM 和 BOM 这两个对象模型,取而代之的,是 全局成员 和 核心 API 模块
LTS和Current版本区别
1. LTS:【推荐在企业中使用】,是长期稳定版的安装包,运行稳定、安全;
2. Current:【推荐学习或尝鲜去使用】,是最新特征版,这个安装包中有最新的Node特性;
版本号的查看 node-v
Node.js 环境中 执行 js 代码的两种方式
直接使用node 要执行的JS文件路径来执行指定的JS文件
小技巧:
- 在终端中,使用键盘的↑, 可以快速定位到上一次执行的命令
- 在终端中,使用键盘的 tab 键能够快速补全路径
- windows 系统上,在终端中输入 cls 可以清屏
REPL 环境
1. 如何进入 REPL 环境: 打开任意终端,直接输入 node 并回车,就会进入到 REPL 环境中;
2. 如何离开 REPL 环境:按两次ctrl + c 就能退出 REPL 环境;
- R: Read 的意思,每当我们输入完毕代码之后,只要敲击回车,Node环境就会读取用户输入的代码
- E:Evaluate 的意思,表示把 Read 进来的用户代码,调用 类似于 Eval 的函数,去解析执行
- P:Print 输出的意思;把第二步中解析执行的结果,输出给用户;
- L:Loop 循环的意思,表示当输出完毕之后,进入下一次的 REP循环
**
ECMAScript 6常用语法
var与let的区别:let不会变量提升有{}作用域
定义变量:let
定义常量:const:
1.const定义之后无法重新赋值
2.也有块级作用域
1.箭头函数的应用
如果参数只有一个可以去掉()
如果函数体执行只有一行可以去掉{}切记同时去掉return
如果满足上述两种可以一起去掉
2.字符串拓展startsWith和endsWith:是否已某一段字符开始和结束返回true/false
3.字符填充padStart和padEnd:第一个参数是总的字节数,第二个参数是填充的内容
4.模板字符串
``内写字符串的内容 ${}内写变量
函数拓展作为函数的默认值
function add(a=10){
console.log(a+10)
}
add() //结果为20
5.展开运算符
var arr=[1]
var arr1=[2]
var arr2=[3]
var arr3=[...arr,...arr1,...arr2] //[1,2,3]
6.数组去重的ES6语法
Array.from(new Set(arr))