javascript 数组精简技巧小结


Posted in Javascript onFebruary 26, 2020

数组是 JS 最常见的一种数据结构,咱们在开发中也经常用到,在这篇文章中,提供一些小技巧,帮助咱们提高开发效率。

1. 删除数组的重复项

javascript 数组精简技巧小结

2. 替换数组中的特定值

有时在创建代码时需要替换数组中的特定值,有一种很好的简短方法可以做到这一点,咱们可以使用.splice(start、value to remove、valueToAdd),这些参数指定咱们希望从哪里开始修改、修改多少个值和替换新值。

javascript 数组精简技巧小结

3. Array.from 达到 .map 的效果

咱们都知道 .map() 方法,.from() 方法也可以用来获得类似的效果且代码也很简洁。

javascript 数组精简技巧小结

4.置空数组

有时候我们需要清空数组,一个快捷的方法就是直接让数组的 length 属性为 0,就可以清空数组了。

javascript 数组精简技巧小结

5. 将数组转换为对象

有时候,出于某种目的,需要将数组转化成对象,一个简单快速的方法是就使用展开运算符号(...):

javascript 数组精简技巧小结

6. 用数据填充数组

在某些情况下,当咱们创建一个数组并希望用一些数据来填充它,这时 .fill()方法可以帮助咱们。

javascript 数组精简技巧小结

7. 数组合并

使用展开操作符,也可以将多个数组合并起来。

javascript 数组精简技巧小结

8.求两个数组的交集

求两个数组的交集在面试中也是有一定难度的正点,为了找到两个数组的交集,首先使用上面的方法确保所检查数组中的值不重复,接着使用.filter 方法和.includes方法。如下所示:

javascript 数组精简技巧小结

9.从数组中删除虚值

在 JS 中,虚值有 false, 0''null, NaN, undefined。咱们可以 .filter() 方法来过滤这些虚值。

javascript 数组精简技巧小结

10. 从数组中获取随机值

有时我们需要从数组中随机选择一个值。一种方便的方法是可以根据数组长度获得一个随机索引,如下所示:

javascript 数组精简技巧小结

11.反转数组

现在,咱们需要反转数组时,没有必要通过复杂的循环和函数来创建它,数组的 reverse 方法就可以做了:

javascript 数组精简技巧小结

12 lastIndexOf() 方法

javascript 数组精简技巧小结

13.对数组中的所有值求和

JS 面试中也经常用 reduce 方法来巧妙的解决问题

javascript 数组精简技巧小结

总结

在本文中,介绍了13个技巧,希望它们可以帮助编写简洁代码,如果你还有更好的办法,欢迎留言讨论。

英文原文:

https://dev.to/duomly/13-useful-javascript-array-tips-and-tricks-you-should-know-2jfo

到此这篇关于javascript 数组精简技巧小结的文章就介绍到这了,更多相关js数组精简内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
[原创]站长必须要知道的javascript广告代码
May 30 Javascript
jQuery 可以拖动的div实现代码 脚本之家修正版
Jun 26 Javascript
js 替换功能函数,用正则表达式解决,js的全部替换
Dec 08 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
jQuery中noconflict函数的实现原理分解
Feb 03 Javascript
jquery对象和DOM对象的相互转换详解
Oct 18 Javascript
详解vue 配合vue-resource调用接口获取数据
Jun 22 Javascript
微信小程序 swiper组件构建轮播图的实例
Sep 20 Javascript
微信小程序动画(Animation)的实现及执行步骤
Oct 28 Javascript
详解如何在vue项目中使用layui框架及采坑
May 05 Javascript
js时间转换毫秒的实例代码
Aug 21 Javascript
Vue.js watch监视属性知识点总结
Nov 11 Javascript
vue父子模板传值问题解决方法案例分析
Feb 26 #Javascript
jquery实现直播视频弹幕效果
Feb 25 #jQuery
JavaScript实现打砖块游戏
Feb 25 #Javascript
深入理解Antd-Select组件的用法
Feb 25 #Javascript
京东优选小程序的实现代码示例
Feb 25 #Javascript
手把手带你入门微信小程序新框架Kbone的使用
Feb 25 #Javascript
vue 路由守卫(导航守卫)及其具体使用
Feb 25 #Javascript
You might like
DOTA2 无惧惊涛骇浪 昆卡大型水友攻略
2020/04/20 DOTA
php小经验:解析preg_match与preg_match_all 函数
2013/06/29 PHP
多个PHP中文字符串截取函数
2013/11/12 PHP
PHP调用wsdl文件类型的接口代码分享
2014/11/19 PHP
ZF框架实现发送邮件的方法
2015/12/03 PHP
PHP+Apache+Mysql环境搭建教程
2016/08/01 PHP
PHP7新增运算符用法实例分析
2016/09/26 PHP
PHP Laravel中的Trait使用方法
2019/01/20 PHP
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
JS日期和时间选择控件升级版(自写)
2013/08/02 Javascript
Linux下使用jq友好的打印JSON技巧分享
2014/11/18 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
Angular中的interceptors拦截器
2017/06/25 Javascript
jQuery表单设置值的方法
2017/06/30 jQuery
Vue编写多地区选择组件
2017/08/21 Javascript
Angularjs使用过滤器完成排序功能
2017/09/20 Javascript
JS实现图片居中悬浮效果
2017/12/25 Javascript
Vue实现图书管理小案例
2020/12/03 Vue.js
Python中xrange与yield的用法实例分析
2017/12/26 Python
Python3.6实现带有简单界面的有道翻译小程序
2019/04/16 Python
python微信公众号开发简单流程实现
2020/03/09 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
使用HTML5的表单验证的简单示例
2015/09/09 HTML / CSS
塔吉特百货公司官网:Target
2017/04/27 全球购物
Richards网上商店:当代时尚,遍布巴西
2019/11/03 全球购物
高中毕业自我鉴定
2013/12/22 职场文书
大学生的创业计划书就该这么写
2014/01/30 职场文书
医院信息公开实施方案
2014/05/09 职场文书
个人务虚会发言材料
2014/10/20 职场文书
2014年导购员工作总结
2014/11/18 职场文书
万里长城导游词
2015/01/30 职场文书
简历中自我评价范文
2015/03/11 职场文书
法制教育讲座心得体会
2016/01/14 职场文书
终止合同协议书范本
2016/03/22 职场文书
Django展示可视化图表的多种方式
2021/04/08 Python
python实现自动清理文件夹旧文件
2021/05/10 Python