ES6基础知识学习总结
- const 不可修改基本类型的值,可以修改引用类型的值
1 function last(){ 2 const PI = 3.14; //const不能修改基本类型数值 3 const k ={ //指针不变,可以修改对象 4 a:1 5 } 6 k.b=3; 7 console.log(PI,k) 8 }
- 数组和对象的解构赋值
数组的结构赋值
1 { 2 let a,b,rest; 3 [a,b]=[1,2]; 4 console.log(a,b) 5 } 6 7 { 8 let a,b,rest; 9 [a,b,...rest] = [1,2,3,4,5,6]; //rest 是数组 10 console.log(a,b,rest) 11 }
对象的解构赋值
1 { 2 let a,b; 3 ({a,b}={a:1,b:2}) 4 console.log(a,b) 5 } 6 { 7 let o ={p:22,q:true}; 8 let {p,q} = o; 9 console.log(p,q) 10 } 11 12 { 13 let metaData={ 14 title:'abc', 15 test:[{ 16 title:'test', 17 desc:'desc' 18 }] 19 } 20 let {title:enTitle,test:[{title:cnTitle}]}=metaData; //JSON数据格式解构赋值,为变量命名 21 console.log(enTitle,cnTitle) 22 }
- 数值拓展
1 // 数值 2 3 { 4 //ES6二进制以ob开头,八进制以0o开头 5 console.log(0b111110111) 6 console.log(0o767) 7 } 8 { 9 // 判断数值是否是有穷的 10 console.log('15 ', Number.isFinite(15)) //true 11 console.log('NaN', Number.isFinite(NaN)) //false 12 // 判断一个值不是一个数值 13 console.log('NaN',Number.isNaN(NaN)) //true 14 console.log('1',Number.isNaN(1)) //false 15 } 16 { 17 console.log('15',Number.isInteger(15)) //true 18 console.log('15.0',Number.isInteger(15.0)) //true 19 console.log('15.1',Number.isInteger(15.1)) //false 20 21 } 22 { 23 // 判断一个数是否在2的53次方与2的负53次方之间,ES6用两个常数表示这两个端点值 24 console.log(Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER) 25 console.log('10',Number.isSafeInteger(10)) //判断是否在有效的安全范围内 26 27 } 28 29 { 30 // 取整 31 console.log('4.1',Math.trunc(4.1)) //4 32 console.log('4.9',Math.trunc(4.9)) //4 33 } 34 { 35 // 判断一个数是正数负数还是0 36 console.log('-5',Math.sign(-5)) //-1 37 console.log('0',Math.sign(0)) //0 38 console.log('5',Math.sign(5)) //1 39 } 40 { 41 //立方根 42 console.log('-1',Math.cbrt(-1)) //-1 43 console.log('8',Math.cbrt(8)) //2 44 }