一、新增字符串操作
- repeat() 重复操作 console.log("abc".repeat(10)) 结果为重复十遍abc
- 反引号用法:可插入变量,可插入函数
二、函数新增特性
1.rest参数:可代替arguments; rest是纯数组对象;
2.箭头函数:
- 写法:let fn=val=>val; 相当于 let fn =function(val){return val;} 若要执行多条语句需要花括号;
- 作用:简化回调函数的写法 箭头函数中的this是函数声明所在的对象
三、数组新的特性
- Array.form() 将数组对象转换为纯数组
- Array.of(a,b,c) 将参数列表返回一个数组 相当于创建数组
- 数组对象新增方法:
- find(callback) 返回数组中第一个满足条件的元素
let arr = [3, 5, 7, 8, 9]; // let result = arr.find(n => n % 2 === 0)
- findindex(callback) 返回数组中第一个满足条件的元素索引
- entire() 帮助数组遍历每一个key值与value值
- keys() 帮助数组遍历所有的key值
- includes() 检索数组是否包含谋个值,返回布尔值
- filter(callback) 过滤数组单元,将满足条件的元素过滤
// 1. 将城市名字中包含 白 字的 输出 // let arr = cities.filter(city => city.nm.includes('白')) // 2. id末尾为0的城市 // let arr = cities.filter(city => city.id % 10 === 0); // console.log(arr);
- map(callback)对数组进行遍历,将计算后的值返回新数组
3. 将拼音大写 // let arr = cities.map(city => { // city.py = city.py.toUpperCase(); // return city; // }) // 4. 将数组的值全部返回3次方 // let arr = [1,3,5,7,9]; // let newArr = arr.map(n => n**3); // console.log(newArr);
- some(callback) 对数组进行遍历,只要有一个满足条件,则返回TRUE,并终止遍历,否则返回false
5. 遇到第一个含有 石 字的城市停下来 // let n = cities.some(city => {city.nm.includes('石')); // console.log(n);
- every(callback) 对数组进行遍历,如果有一个不满足条件,则返回false,并终止遍历,否则返回TRUE
四、对象新增特性
1.属性级方法的简洁表示(key名与value名相同)
let name="ce" let age=18; //ES5 var obj1={ name:name, age:age, run:function(){console.log("快速跑")} } //ES6 var obj2={ name, age, run(){console.lg("快速跑")} }
2.Object.is()相当于全等于,但还是有区别
- Object.is(1,2)
- Object.is(NaN,NaN)
- Object.is(0.-0)
3.Object.assign(obj1.obj2.obj3)合并对象 所有对象都会合并到obj1,如果是相同的属性,后边的对象的属性值会对前边的进行覆盖
4.Object.keys(obj) 将obj 的key值返回到一个纯数组
5.Object.value(obj) 将obj的value值返回到一个纯数组
6.Object.entries(obj) 返回一个二维数组,每一个小数组都是一对