es6知识点总结(一)
let,var,const
var:能重复声明,有前置功能。
let:有块级作用域,没有前置功能,不能重复声明。
const:有块级作用域,用来声明常量(恒量),不可改变,常量的名字必须大写,不能重复声明,常量在声明的时候必须赋值,常量的值是引用数据类型。
模板字符串:
1.模板字符串可以绑定变量;
2.模板字符串支持换行;
3.标签模板字符串。
对象字面量:
1.字面量对象属性能够简写(当你赋值的变量名和你的属性名一样的情况下);
2.字面量对象方法可以简写,省去function关键字;
3.对象的属性可以写自动计算的属性。
解构赋值:
1.解构赋值是指es6允许我们按照一定的解构模式提取数组和对象里的值赋给变量;
2.解构可以避免在对象赋值时产生中间变量;
3.解构赋值可以解构对象,解构阵列。
扩展运算符:
1.展开数组:
let arr = [1,2,3,4];
let a = [...arr];
console.log(a);
2.数组的拷贝:
let a = [1,2,3];
let a1 = [...a];
a1.push(4);
console.log(a);
console.log(a1);
3.数组的合并:
let a = [1,2,3];
let a1 = [4,5,6];
a = [...a,...a1];
console.d(a);
4.数组的调用:
function fn(a,b,c,d){
console.log(a+b+c+d);
}
var p=[1,2,3,4,5,6];
let result=fn(10,...p);
箭头函数:
//箭头函数 =>
let a = () => {
console.log("Hello word")
}
a();
//有参数
(name)=>{
console.log(name);
};
//没有参数
()=>{
console.log("hi word")
};
//可以省略()
let d = name=>{
console.log(name);
}
d('jiang');
//两个参数
(name,age)=>{
console.log(name,age);
};
//省略后的
let c (a,b)=>a+b;
(a,b)=>{console.log(a+b);
console.log(c);
扩展参数:
//默认参数
let sayHellow = (name,age=30)=>{
let str = `${name} is ${age} years old`
console.log(str);
}
sayHellow("songze",25);//控制台打印songze is 25 years old。
//扩展参数
let sum = (a,b,c) => {
console.log(a+b+c);
};
let arr = [1,2,3];
sum(...arr);//控制台打印6。
//剩余函数
let he = (a,b,...rest)=>{
console.log(rest);//控制台打印[3, 4, 5, 6, 7, 8, 9]。
console.log(a+b);//控制台打印3.
}
he(1,2,3,4,5,6,7,8,9);
Math、Number、String 、Array、Object:
1.Math:
01.trunc:用于去除一个数的小数部分,返回整数部分;
02.sign:用来判断这个数是正数负数还是0,如果是正数就打印1,负数打印-1,0打印0,-0打印-0;
03.cbrt 用来计算一个数的立方根。
2.Number:
01.isInter:判断一个数是否是整数;
02.isNaN:里面的数只有是NaN的时候是true,别的全部都是fales,用来判断这个数是不是非数字。
3.String:
01.includes:判断一个字符串里面有没有包含某个字符;
02.startsWith:判断一个字符串以某个字符开头;
03.endsWith:判断一个字符串以某个字符结尾;
04.repeat 重复打印某个字符串。
4.Array:
01.Array.feom:复制一个数组;
02.Array.of:把多个数字放在一个数组里,类似于 new Array;
03.fill:第一个参数是要把数组里的值改成什么,达尔戈参数是从数组的哪一位开始,它不管后面有多少数都要改变。
5.Object:
01.Object.assign:浅拷贝一个数组;
02.Object.setPrototypeOf:设置原型。
Symbol:
1.Symbol永远是唯一的,不可能和别的重复,可以阻止对象的属性被篡改;
2.Symbol前面不能使用new操作符。
Set WeakSet:
1.集合和数组的区别就是一个重复,有个不重复;
2.WeakSet只能方引用数据类型(Object,数组)。
Map WeakMap:
1.Map和Object的区别:键名可以是任何数据类型;
2.初始化的时候必须一次性指定键名(key)和键值(value)。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。