web前端-ES6初探
let声明变量
- ES6中新增的变量,只在块级作用域中有效(一个大括号中);
- 防止循环中的变量变成全局变量;
- 不存在变量提升,暂时性死区(一个大括号内,对let变量先使用后定义,报错undefined)如:var num=10;if(1){ console.log(num) let num; }
const声明常量
var
解构
- 从数组中提取值,变量对应的位置进行重新赋值。如let【a,b,c,d】=[1,2,5]
- 解构不成功的部分为undefined,如d
- 允许使用对象属性和变量名匹配,把值赋给变量,如let person ={name:“bob“} let {name}=person
- 如:**let{name:myname } = person **,把person中的bob赋值给myname
箭头函数 ()=>{}
- 使用方法:通常把箭头函数赋值给变量,然后调用,如 const fn = ()=>{ console.log(1)}; fn();
- 函数中只有一行代码,大括号可省略,return可省略如: const sum=(n1,n2)=>n1+n2; sum(3,5);
- 只有一个形参,小括号可省略const sum = n1=>n1
- 箭头函数不绑定this关键字,其中的this指向函数定义上下文的this
剩余参数
- const sum= (…args)=>{} …表示接受所有参数。
扩展运算符
Array扩展方法
from,转换为数组
find 找到某元素
findIndex,找到下标,否则-1
includes(),是否包含某值,
String,模板字符串
扩展方法startsWith 和endsWith
repeat
Set数据结构
- 值唯一,没有重复值(自动去重) const s1= new Set([1,1,1,3,3,5,7]);
- Set实例方法:s1.add(3), delete(), has(), clear()