es6知识点总结
let声明的块级作用域{}也就是代码块。
let声明的变量会向上寻找最近的{变量的作用域就是该{}内部}
let声明的变量不能重复声明
var 以下情况却被允许:
var a=10;
var a=20;
let声明的变量没有变量提升的概念,会把声明提升到作用域的最前面
模板字符串的使用:`` 需要变量和常量拼接的时候 直接使用 `` 如果是变量${变量}
//会把参数${}作为分隔符,分割成数组。数组内部包含的是常量,常量在一个数组内部,变量单独作为一个个实参。
// add`${m}h33333${n}e`
// add(['','h','e'],m,n)
关于for in :用来遍历数组,遍历类数组的时候,会附带很多不必要的属性
//Array.from()把类数组转换为数组
forEach只能用来遍历数组,遍历类数组会报错。
find查询第一个符合条件的数据
findIndex查询第一个符合条件的数据下标
indexOf()查找元素在数组中的下标
copyWithin(a,b,c)复制数组的一部分,
a代表的是替换开始的位置,b代表的复制开始的位置,c代表的是复制结束的位置,不包含结束位置
通过函数.call(对象) 可以通过call方法修改this指向
剩余参数:没有形成对应的实参,放在剩余参数内部,形成数组 ...形参名。剩余参数放在参数的末尾。
function fn(a,b,c,...rest){
console.log(rest)
}
类数组对象:arguments。
箭头函数的this指向的是定义的时候所在对象,而不是使用的时候所在对象。