let、const、var的区别
相同点:在全局声明的变量是全局变量,在局部声明的变量是局 部变量
let和var的区别
1、let声明的变量不能提升
2、let声明的变量不能重复声明
3、let声明的变量只在当前块作用域中有效 (块作用域 {})
4、let声明的变量会产生暂时性的死区,只能在当前块作用域中查找
const和var的区别
1、const声明的变量必须赋初值
2、const声明的变量是常量,不能发生改变
3、const声明的变量不能提升
4、const声明的变量不能重复声明
5、const声明的变量只在当前块作用域中有效 (块作用域 {})
6、const声明的变量会产生暂时性的死区,只能在当前块作用域中查找
解构赋值:将数组中的元素,字符串中的字符,对象中的属性分解成一个一个的变量
一、数组
1、完全解构
2、不完全解构
3、赋初值
4、嵌套
二、字符串
charAt() substr() subString() slice()
三、对象
1、完全解构
2、不完全结构
3、赋初值
四、解构赋值的作用
1、交换两个变量
2、让函数有多个返回值
3、解决形参undefined的问题
字符串和数组的方法
一、字符串
1、模板字符串 `${变量}`
2、repeat(N)函数 重复⽬标字符串 N 次
3、includes()函数 判断字符串是否在⽬标字符串⾥,在返回ture,不在返 回false( 空字符串是任何字符串的⼦集)
4、startsWith()函数 判断字符串是否在⽬标字符串开头
5、endsWith()函数 判断字符串是否在⽬标字符串结尾
6、String.raw
二、数组
1、Array.of()函数 将⼀组值转化成数组
2、Array.from()函数 将伪数组转换成真正的数组 数组深拷⻉
3、find()函数 找到符合条件的第⼀个元素,并返回,没有返回undefined
4、findIndex()函数 找到符合条件的第⼀个元素,并返回它的索引,没有 返回-1
5、fill()函数 填充指定的值到数组
6、entries()函数 对数组的键值对进⾏遍历,返回遍历器,通过 for of进⾏遍历
7、keys()函数 对数组的键进⾏遍历,返回遍历器,通过 for of进⾏遍历
8、values()函数 对数组的值进⾏遍历,返回遍历器,通过 for of进⾏遍历
三、迭代函数
1、forEach 没返回值
2、map 有返回值(数组)
3、some
4、every
5、filter
6、reduce
7、find
8、findIndex
9、for