es6学后感
1.简写
首先是对象中的key==value,就可以简写成
let obj={
hello:hello //可以简写成hello
}
对象的中的方法简写
es5中 let obj = { hello :function(){} } es6中 let obj={ hello(){} }
2.属性的表达方式
Obj中的key可以是变量了
let a = hello let obj={ [a]="123" }
3.遍历对象中的key 和value
let test = { k:'12', l:'23' } for(let [key,value] of Object.entries(test)){ console.log([key,value]) }
4.扩展运算符
let {a,b,...c} = {a:'1',b:'3',c:'22',h:'33'} a = 1 b = 3 c = [22,33] ...就是剩下的都是他的
5.var 和let的经典的for循环
原理是var没有作用域,他没有往下执行,而是等着循环完了之后,所以每个打印出来都是最大值
let 有作用域 let的变量不能重复声明
const 是定义常量的,不能瞎改,但是如果定义的是一个对象,则可以修改,因为是引用地址
6.数组的解构赋值
let a,b,c
[a,b] = [1,2]
a=1 b=2
数组的默认值
[a,b,c=3]=[1,2]
c=3
数组的交换
let a=0;b=1
[a,b] = [b,a]
忽律某些我不想要,我只要我想要的
[a,,,b] = [1,2,3,4]
处理数组
Array.from([1,2,3],function (item) { return item*2 }
数组填充替换
new Array(6).fill(1)
替换的元素 从哪替换 替换到哪 ,不包括最后一位
['a','b','c','d','g','j'].fill(7,1,3)