この記事では、for ループを使用して簡単な算術シーケンスを生成する js の実装方法について説明します。具体的な実装方法については、この記事を参照してください。
最も簡単な方法は、for ループを使用することです
let arr = [] for (let i = 0; i < b - a + 1; i++) { arr.push(i + a) } return arr
上級
よく考えたら、前の方法はちょっとバカだった気がしたので、これらの方法を思いつきました
配列のギャップ
join()とtoString()はギャップを次のように扱います未定義 (文字列形式):
// 拼接 > 分割 > 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() などの他の方法もあります、待ってください。これらのメソッドは実装するほど単純ではないため、上記は私がまとめたものであり、将来すべての人に役立つことを願っています。
関連記事:
jq.ajax+php+mysqlでキーワードファジークエリを実装する方法asyncとenterproxyを使用して同時実行数を制御する方法画像の遅延読み込みimgLazyLoading.js活用 jquery.page.js がページング効果を実現する方法以上がJavaScriptを使用して等差数列を生成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。