本文实例讲述了ES6常用小技巧。分享给大家供大家参考,具体如下:
1- 数组去重
var arr = [1,2,3,4,4]; var arr2 = [...new Set(arr)];
这个时候arr2就是去重后的数组~
2- 交换两个变量的值
let [x,y] = [1,2]; [y,x] = [x,y]; console.log(y);
3- 获取字符串中的某个字符
let arr= "hellomybo"; console.log(arr[3]);
ES5的写法
let a1 = [1,3].map(function (x) { return x * x; });
ES6 箭头函数写法
let a2 = [1,3].map(x => x * x); console.log(a1,a2);
5- 合并数组
var arr1 = ['a','b']; var arr2 = ['c']; var arr3 = ['d','e'];
// ES5的合并数组 arr1.concat(arr2,arr3); // [ 'a','b','c','d','e' ]
// ES6的合并数组 [...arr1,...arr2,...arr3] // [ 'a','e' ]
6- 字符串反转
let str = "12345678900987654321";
原始写法:
str.split('').reverse().join('')
展开写法:
[...str].reverse().join('')
7- 过滤需要的数值 和 获得计算后的数值
过滤:
['a','b'].filter(x => true) // ['a','b']
计算:
let arr = [1,4].map(x=>x+1); console.log(arr);
8-数组降维 使用generator迭代器
var arr = [1,[[2,3],4],[5,6]]; var flat = function* (a) { var length = a.length; for (var i = 0; i < length; i++) { var item = a[i]; if (typeof item !== 'number') { yield* flat(item); } else { yield item; } } }; for (var f of flat(arr)) { console.log(f); }
感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试上述代码运行效果。
更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。