ES6常用小技巧总结【去重、交换、合并、反转、迭代、计算等】
本文实例讲述了ES6常用小技巧。分享给大家供大家参考,具体如下:
1- 数组去重
var arr = [1,2,3,4,3,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]);
4- 使用箭头函数代替回调函数
ES5的写法
let a1 = [1,2,3].map(function (x) { return x * x; });
ES6 箭头函数写法
let a2 = [1,2,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', 'b', 'c', 'd', 'e' ]
6- 字符串反转
let str = "12345678900987654321";
原始写法:
str.split('').reverse().join('')
展开写法:
[...str].reverse().join('')
7- 过滤需要的数值 和 获得计算后的数值
过滤:
['a',,'b'].filter(x => true) // ['a','b']
计算:
let arr = [1,2,3,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程序设计有所帮助。
栏 目:JavaScript
本文标题:ES6常用小技巧总结【去重、交换、合并、反转、迭代、计算等】
本文地址:https://www.xiuzhanwang.com/a1/JavaScript/9439.html
您可能感兴趣的文章
- 01-10小程序简单两栏瀑布流效果的实现
- 01-10微信小程序批量上传图片到七牛(推荐)
- 01-10微信小程序跨页面数据传递事件响应实现过程解析
- 01-105分钟快速看懂ES6中的反射与代理
- 01-10微信小程序按顺序同步执行的两种方式
- 01-10JQuery常用选择器功能与用法实例分析
- 01-10微信小程序实现签字功能
- 01-10JQuery中的常用事件、对象属性与使用方法分析
- 01-10JS实现关闭小广告特效
- 01-10javascript实现点击星星小游戏
阅读排行
本栏相关
- 04-02javascript点线,点线的代码
- 04-02javascript潜力,javascript强大吗
- 04-02javascript替换字符串,js字符串的替换
- 04-02javascript移出,js 移入移出
- 04-02包含javascript舍的词条
- 04-02javascript并行,深入理解并行编程 豆瓣
- 04-02javascript匿名,js匿名方法
- 04-02javascript警报,JavaScript警告
- 04-02javascript遮盖,JavaScript遮盖PC端页面
- 04-02javascript前身,javascript的前身
随机阅读
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 04-02jquery与jsp,用jquery
- 01-10delphi制作wav文件的方法
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-11ajax实现页面的局部加载
- 01-10C#中split用法实例总结
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10SublimeText编译C开发环境设置
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 08-05织梦dedecms什么时候用栏目交叉功能?