ES6最重要最复杂的知识点: 1. 类和继承 2.promise 3. ES6模块化(在vue中讲)
1.变量声明关键字
var
全局作用域和函数作用域
会变量提升
let
局部作用域
不会变量提升
不能重复声明
const
值类型不能修改
声明必须赋值
一般大写
2.解构
数组
定义:把数组或对象解析为单独变量
1基本格式
var [a,b,c="default",...rest]=arr
2. 逗号代表下一位
3. ...rest 剩余的所有(只能放在最后)
4.可以有默认值
5.交换变量
[a,b]=[b,a]
对象
var {name,age,say="love you",...rest}=obj
对戏结构没有顺序
3. 字符串
字符串模板
`${js变量}`
可以换行,可以加特殊符号
遍历
for of
检测
includes(sub)是否包含
statsWith(sub)以开头
endsWith(sub)以结尾
去空白
trim()去掉两端空白
trimLeft()去掉左边空白
trimRight()去掉右边的空白
重复
repeate(n)字符串重复n次
填充
“22”.padStart(4,”0“)
‘0022’
“22”.padEnd(次数,填充字符串)
4.数组高阶方法
forEach遍历
arr.forEach(function(item,index,self){})
item当前遍历的元素
index 当前遍历的下标
self当前遍历的数组
map映射arr.map(function(item,index,self){
返回一个 ,映射数组
})
filter过滤
arr.filter(function(item,index,self){
//当返回的值为真,当前元素保留
//返回的元素为假,当前元素被过滤掉
})
reduce累计
arr.reduce(function(a,b,index,self){
a是上一次返回的结果
})
some有一个
有一个返回结果为true最终结果为true
every每一个
每个返回结果为true最终结果为true
find查找元素
查找符合条件的元素
findindex查找下标
查找符合条件的元素下标
sort 排序((a,b)=>a-b)