0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JavaScript random関数

Posted at

初学者の備忘録

初学者の備忘録です。今回はJavaScriptのrandom関数の基礎と簡単な演算子を記録していきたいと思います。

random関数とは

random関数とはランダムな返り値(戻り値)を出す関数です。
random関数にはlet 変数名 = parseInt Math.random()を使用します。この状態だと小数点まで変え値としてしまうので自然数として出力するには少し工夫が必要になってきます。

random関数基礎

上記での説明した通り、random関数を使用するにはlet 変数名 = parseInt Math.random()を使用します。
そして今回はサイコロのをイメージして1〜6の数字をランダムに出力させることをやっていきます。

let randomum = parseInt(Math.random() * 6) + 1;
console.log(randomum);

上記のコードで1〜6の数字がランダムで出力されるようになります。
詳しく説明するとletでrandomumという変数名を作成し、parseInt(Math.random())でランダムな数字が一つ選択されます。ただし、このままでは小数点を含んだ数字がランダムで選ばれてしまうので、自然数で1〜6という制限をかけます。
 
そこでMath.random()に✖️6をしてあげることで0〜6の間で選ばれるようになります。parseInt(Math.random() * 6)つまりここでの6という数字はどこまでの数値をランダムで出力させるのか?という制限になるのでランダムに出力させたい状況によって自由に変更可能です。

最後に0〜6ではなく、1〜6の間でランダムに出力して欲しいので+1をしてあげることで0という数字が出力されないようになります。parseInt(Math.random() * 6) + 1
*6がランダムのどこまでと上記で説明したようにここでの+1はどこからの数値になります。なのでここで1ではなく、+3とすると3〜6の間となります。
 
あとはparseInt(Math.random() * 6) + 1ここで選ばれたランダムな数値が返り値として変数randomumに格納され、console.logは出力コマンドなので1〜6のランダムな数値が出力されるというコードになります。

random関数簡単演算子

ちょっとしてステップアップとしてrandom関数を使用して簡単な演算子をやっていきたいと思います。

リンゴの単価をランダムでリンゴの個数もランダムとした時、合計金額を出力する計算です。

//リンゴの単価
let apple_price = (Math.floor(Math.random() * 3) + 1) * 100;
//リンゴを買う数
let apple_num = Math.floor(Math.random() * 10) + 1;

console.log("リンゴの単価:" + apple_price + "");
console.log("リンゴを買う数:" + apple_num + "");

// 合計金額
let total = apple_price * apple_num;
console.log("合計金額:" + total + "");

基本的には基礎編とあまり変わりません。
Math.floor小数点切り捨ての関数です。リンゴの単価の部分は少し複雑そうに見えますが、(Math.floor(Math.random() * 3) + 1)の部分は基礎編の考え方と一緒で1〜3までの数値をランダムで選択します。しかしランダムで選択さされた数値を()で囲み*100しているので返り値に*100と掛け算されるので100、200、300のどれかの数値になります。
 
合計金額の部分も難しく考えず、変数 * 変数ということは返り値 * 返り値と一緒なので単価 * 個数となり、合計金額が出力されます。

最後

今回は基礎ではあるのですが、説明する箇所が多く、文章が冗長になってしまい自分でもうまくまとめられているのか不安です。間違いなどありましたら申し訳ありません。
以上で終了になります。お疲れさまでした。

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?