ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptを使用して等差数列を生成する方法

JavaScriptを使用して等差数列を生成する方法

亚连
亚连オリジナル
2018-06-23 17:48:362705ブラウズ

この記事では、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(&#39; &#39;).split(&#39; &#39;).map((e, i) => a + i)
// 转字符串 > 分割 > map
Array(b - a + 1).toString().split(&#39;,&#39;).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(&#39; &#39;).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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。