JavaScript生成简单等差数列


Posted in Javascript onNovember 28, 2017

题目很简单,最简单的办法就是使用for循环

let arr = []
for (let i = 0; i < b - a + 1; i++) {
 arr.push(i + a)
}
return arr

进阶

之后再想起来时感觉之前的方法有点愚蠢,遂又想出这些方法

数组空位

join()和toString()会将空位视为undefined(字符串形式):

// 拼接 > 分割 > map
Array(b - a + 1).join(' ').split(' ').map((e, i) => a + i)
// 转字符串 > 分割 > map
Array(b - a + 1).toString().split(',').map((e, i) => a + i)

利用Array.from方法实现:

// 空数组转真数组
Array.from(Array(b - a + 1)).map((e, i) => a + i)
// 类似数组的对象转数组
Array.from({ length: b - a + 1 }).map((e, i) => a + i)
Array.from({ length: b - a + 1 }, (e, i) => a + i)

ES6的扩展运算符还可以帮我们更方便地完成这件事

[...Array(b - a + 1)].map((e, i) => a + i)
fill()、entries()、keys()方法也不会忽略空位
Array(b - a + 1).fill(' ').map((e, i) => a + i)
[...Array(b - a + 1).entries()].map(e => e[0] + a)
[...Array(b - a + 1).keys()].map(e => e + a)

还有其他的途径可以完成这件事,比如findIndex()、find()、for...of等,这几个方法实现起来也不够简单,就不多余赘述了

总结

以上所述是小编给大家介绍的JavaScript生成简单等差数列,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
jQuery页面滚动浮动层智能定位实例代码
Aug 23 Javascript
ANT 压缩(去掉空格/注释)JS文件可提高js运行速度
Apr 15 Javascript
JavaScript版TAB选项卡效果实例
Aug 16 Javascript
document.documentElement和document.body区别介绍
Sep 16 Javascript
javascript实现的平方米、亩、公顷单位换算小程序
Aug 11 Javascript
javascript实现复制与粘贴操作实例
Oct 16 Javascript
基于ajax实现文件上传并显示进度条
Aug 03 Javascript
angularjs封装bootstrap时间插件datetimepicker
Jun 20 Javascript
快速使用node.js进行web开发详解
Apr 26 Javascript
Vue实现PopupWindow组件详解
Apr 28 Javascript
js实现圆形显示鼠标单击位置
Feb 11 Javascript
纯js+css实现在线时钟
Aug 18 Javascript
微信小程序用户自定义模版用法实例分析
Nov 28 #Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
Nov 28 #Javascript
浅谈vue中慎用style的scoped属性
Nov 28 #Javascript
元素全屏的设置与监听实例
Nov 28 #Javascript
vue2实现数据请求显示loading图
Nov 28 #Javascript
Vue2仿淘宝实现省市区三级联动
Apr 15 #Javascript
ligerUI---ListBox(列表框可移动的实例)
Nov 28 #Javascript
You might like
php $_SERVER当前完整url的写法
2009/11/12 PHP
Linux下安装PHP MSSQL扩展教程
2014/10/24 PHP
php结合js实现点击超链接执行删除确认操作
2014/10/31 PHP
php通过文件流方式复制文件的方法
2015/03/13 PHP
一张表搞清楚php is_null、empty、isset的区别
2015/07/07 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
CentOS系统中PHP安装扩展的方式汇总
2017/04/09 PHP
setAttribute 与 class冲突解决
2008/02/17 Javascript
JS option location 页面跳转实现代码
2008/12/27 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
JavaScript中的立即执行函数表达式介绍
2015/03/15 Javascript
jQuery实现为图片添加镜头放大效果的方法
2015/06/25 Javascript
基于jQuery实现的扇形定时器附源码下载
2015/10/20 Javascript
javascript中字体浮动效果的简单实例演示
2015/11/18 Javascript
AngularJS初始化静态模板详解
2016/01/14 Javascript
jQuery实现下拉加载功能实例代码
2016/04/01 Javascript
AngularJS 路由和模板实例及路由地址简化方法(必看)
2016/06/24 Javascript
js常用DOM方法详解
2017/02/04 Javascript
webpack打包并将文件加载到指定的位置方法
2018/02/22 Javascript
react redux入门示例
2018/04/19 Javascript
Vue render渲染时间戳转时间,时间转时间戳及渲染进度条效果
2018/07/27 Javascript
echarts多条折线图动态分层的实现方法
2019/05/24 Javascript
[01:20]DOTA2 2017国际邀请赛冠军之路无止竞
2017/06/19 DOTA
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
python 生成目录树及显示文件大小的代码
2009/07/23 Python
Python import与from import使用及区别介绍
2018/09/06 Python
如何通过50行Python代码获取公众号全部文章
2019/07/12 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
django框架forms组件用法实例详解
2019/12/10 Python
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
公立医院改革实施方案
2014/03/14 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
事业单位年度考核个人总结
2015/02/12 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
2015年新农村建设工作总结
2015/05/22 职场文书
【海涛教你打DOTA】虚空假面第一视角骨弓3房29杀
2022/04/01 DOTA