ES6 实践当中的小经验

发布时间:2019-08-09 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了ES6 实践当中的小经验脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

解析赋值
现假设有如下一个json数据

VAR jsonData = {
  id: 42,
  status: "OK",
  data: [867, 5309]
};

结果如下的两种方式输出的结果完全相同:

let { id, status, data: number } = jsonData;

console.LOG(id, status, number); // 42, 'OK', [867, 5309]
let { id, status, data } = jsonData;

console.log(id, status, data); // 42, 'OK', [867, 5309]

其实并不知道为什么两种方式都支持,觉得应该是第二种方式才正统

ES6给数组扩展了一个fill方法,使用方法如下所示:

['a', 'b', 'c'].fill(7)
// [7, 7, 7]

也就是说它是给数组填充值,但是如果填充的是引用类型的话,则事实上改变其中一个所有的都会改变
如下图所示:

ES6 实践当中的小经验

ES6新增了for of运算,原先有了for in运算,为什么又增加for of运算,那来看看它俩之间的区别
在使用for in循环数组,for in会遍历数组所有可枚举属性,包括原型链上的,所以for in更适合遍历对象,不要使用for in遍历数组

ES6 实践当中的小经验

for in 遍历的是数组的索引,而for of遍历的是数组的元素值

ES6 实践当中的小经验

所以在循环数组的话用for of会更加方便一些

Array.From是将类似数组对象(部署了ITerator接口的数据结构,比如字符串和Set结构)转化为真正的数组,但是Array.from还接受第二个参数,作用类似于map方法用来对每个元素进行处理,将处理后的值放入返回的数组

console.log(Array.from([1, 2, 3], (x) => x * x));

数组合并

var arr1 = [0, 1, 2];
var arr2 = [3, 4, 5];
arr1.push(...arr2);
console.log(arr1); // 0,1,2,3,4,5

数组求最大值

console.log(Math.max(...[14, 3, 77]))

扩展运算符还可以替代Object.assign

let ab = { ...a, ...b }; //这句话跟下面的同样作用
let ab = Object.assign({}, a, b);

去除数组重量的值

var arrs = [1, 2, 3, 1, 3, 4];
console.log([...new Set(arrs)]); // [1, 2, 3, 4]

另一种方法去重:

function unique(array) {
  return Array.from(new Set(array));
}

脚本宝典总结

以上是脚本宝典为你收集整理的ES6 实践当中的小经验全部内容,希望文章能够帮你解决ES6 实践当中的小经验所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。