JavaScript生成簡單等差數(shù)列
題目很簡單,最簡單的辦法就是使用for循環(huán)
let arr = [] for (let i = 0; i < b - a + 1; i++) { arr.push(i + a) } return arr
進(jìn)階
之后再想起來時感覺之前的方法有點(diǎn)愚蠢,遂又想出這些方法
數(shù)組空位
join()和toString()會將空位視為undefined(字符串形式):
// 拼接 > 分割 > map Array(b - a + 1).join(' ').split(' ').map((e, i) => a + i) // 轉(zhuǎn)字符串 > 分割 > map Array(b - a + 1).toString().split(',').map((e, i) => a + i)
利用Array.from方法實(shí)現(xiàn):
// 空數(shù)組轉(zhuǎn)真數(shù)組 Array.from(Array(b - a + 1)).map((e, i) => a + i) // 類似數(shù)組的對象轉(zhuǎn)數(shù)組 Array.from({ length: b - a + 1 }).map((e, i) => a + i) Array.from({ length: b - a + 1 }, (e, i) => a + i)
ES6的擴(kuò)展運(yùn)算符還可以幫我們更方便地完成這件事
[...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等,這幾個方法實(shí)現(xiàn)起來也不夠簡單,就不多余贅述了
總結(jié)
以上所述是小編給大家介紹的JavaScript生成簡單等差數(shù)列,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
JS實(shí)現(xiàn)動態(tài)倒計時功能(天數(shù)、時、分、秒)
這篇文章主要介紹了JS實(shí)現(xiàn)動態(tài)倒計時功能詳解(天數(shù)、時、分、秒),需要的朋友可以參考下2019-12-12JS關(guān)閉窗口或JS關(guān)閉頁面的幾種代碼分享
這篇文章介紹了JS關(guān)閉窗口或JS關(guān)閉頁面的幾種代碼,有需要的朋友可以參考一下2013-10-10ExpressJS使用express-ws的實(shí)例詳解
這篇文章主要介紹了ExpressJS使用express-ws的實(shí)例代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-09-09layui checkbox默認(rèn)選中,獲取選中值,清空所有選中項(xiàng)的例子
今天小編就為大家分享一篇layui checkbox默認(rèn)選中,獲取選中值,清空所有選中項(xiàng)的例子,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09firefox火狐瀏覽器與與ie兼容的2個問題總結(jié)
這幾天遇到幾個頭疼的火狐與ie兼容問題整理下來,希望對需要的朋友有所幫助。2010-07-07