プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

【JavaScript入門】乱数とランダムな文字列の作り方

更新日:

記事の内容


この記事では、JavaScriptで乱数の作り方、ランダムな文字列、base64、base58について説明します。
JavaScriptのコードは、ES6で書いています。

乱数の作り方

Math.random関数は、0–1(0以上、1未満)の範囲で浮動小数点の擬似乱数を作成します。
その数字に対して、「自分が作成したい範囲の数字 + 1」を掛けてやると、範囲指定をした上で乱数を作成できます。
例では、最大値に5を設定することで、「0から4」の乱数を作成しています。
デバッグの処理もlogに出しているので、処理を確認してみて下さい。

配列からランダムな値を取り出す

乱数を利用して、配列からランダムな値を取得してみます。

ランダムな文字列の作り方

ASCIIの文字コードには数字が振られていて、それを利用して文字列を作成しています。
「a」は「97」、「b」は「98」という感じになっています。

小文字のみ

forループで作成

関数型で作成

大文字のみ

小文字と大文字の混同

Base58の作成方法

Base58とは、バイナリデータを58種類の文字で表現するフォーマットです。
ただし、そこから人間が間違えやすい文字を削除しています。
小文字のエル(l)、大文字のオオ(O)、大文字のアイ(I)を削除しています。

人間が視認しやすくなるので、クーポンコードを作成する時や、ビットコインのアドレスを作成する時に使われます。

まとめ

この記事では、乱数の作り方とランダムな文字列の作り方を紹介しました。

Good luck for your engineer life!

JavaScriptをより詳しく勉強したい人は、この記事を読んで下さい

JavaScriptの学習でオススメの本と動画【2020年最新】

初心者向け いちばんやさしいJavaScriptの教本 プログラミング初心者にも簡単に理解できるような書き方がされていて、ページあたりの文字数や内容も少ないので、テンポよく勉強を進めることができます。 全体像を掴むには最適な本です。 ただし ...

続きを見る


30代からプログラミングを始めようか迷っている人は、この記事を読んで下さい

30代からプログラミングを始めることは可能なのか?【頑張ればギリギリセーフ】

エンジニアは人気の職種だと聞いていますが、若い人達が多い印象です。 30代から始めても間にあいますか? 2030年には79万人のエンジニアが不足 まずは、今後、10年間以上に渡るエンジニアの需給について確認しましょう。 自分の身を預けたいと ...

続きを見る


プログラミングスクールに行くか迷っている人は、この記事を読んで下さい

なんとなく、エンジニアになりたい人が無料のプログラミングスクールに行くべき理由【2019年12月の最新】

有料や無料のプログラミングスクールが多すぎて、どこにしようか迷っています。 無料のプログラミングスクールは、お得そうに見えますが、実際の所はどうですか? メリットやデメリットなどがあれば教えて下さい。 無料のスクールを推す理由 まずは、私が ...

続きを見る


自分がプログラミングスクールに行っても大丈夫か知りたい人は、この記事を読んで下さい

プログラミングスクールに通って挫折する人と上手くいく人の違い

スクールに通っている人の3パターン プログラミングスクールに通っている人のパターンを整理すると、以下の3パターンに分かれます。 それぞれのタイプの特徴を、もう少し詳細に説明していきます。 それぞれのタイプの特徴 大した努力をせずに文句ばかり ...

続きを見る


ゼロからWebエンジニアになりたい人は、この記事を読んで下さい

ゼロからWebエンジニアとして就職する方法【何もない自分に積み上げていく】

ちまたには、「エンジニアになるための情報」で溢れかえっています。 ジョージさんが考える「Webエンジニアになる方法」を教えて下さい。 私が定義するWebエンジニア まず、最初に以下の図を見て下さい。 これが、Web業界で働く人達の大分類です ...

続きを見る


独学で実務っぽい経験を積みたい人は、この記事を読んで下さい

エンジニアが独学で実務経験っぽいことを学ぶ方法

エンジニアとして就職するためには実務経験が大事だと聞いていますが、就職しないことには実務経験を積むことができません。 どうやって、最初の実務経験を積んだらいいでしょうか? スクールの理想と現実 これからプログラミングを学ぼうとしている人が描 ...

続きを見る

関連コンテンツ

-JavaScript, プログラミング

Copyright© プログラミング道場 , 2020 All Rights Reserved Powered by AFFINGER4.