var [a,b,c] = [1,2,3]
var [head, ...tail] = [1,2,3,4,] var [,,th] = [1,2,3]
var {foo,bar} = {foo:'aaa',bar:'bbb'} var {baz, fo} = {fo:'aaa',bar:'bbb'}//baz没有成功赋值 var {bar:baz, fo} = {fo:'aaa',bar:'bbb'}
对象也可以同样解构:o = ....; var {p:[x,{y}]} = o;
[a,b] = [b,a]
解构循环map for(let [key, value] of map) { console.log(key+' '+value)}
for(let [, value] of map) { console.log(value)}
b = 'u{20aa6}'//四字节的表示法 b.codePointAt(0)
模板字符串
a = `s sdf`
`${a} ${bar}`
0b11 === 3 0o11 === 9
Number.isInteger(23.0)
Math.trunc(45.5)
Array.from(arrayLike).map(x => x*x) Arrray.of(1,2,3) [1,3,4,5].find(a => { return a>3}) findIndex
Object.assign(a,b,c) //a是被添加的目标对象
Object.getPrototypeOf(a) Object.setPrototypeOf(object, proto) a.__proto__
变量和函数作为属性和方法
var s = { a: 'sdf', [kk]: 'df'}
var s = { a: 'sdf', ["hello"+kk]: 'df'}
新的原始数据类型Symbol,产生一个独一无二的值,不可能相等
let w3 = Symbol("safd")