🙆
JavaScript 数値操作まとめ(Math オブジェクト編)
JavaScriptでは数値を扱うときに、Math オブジェクトを使うことで
丸め、乱数、最大値・最小値、三角関数などの操作ができる。
Math.floor()
小数点以下を切り捨てる
常に「小さい方向」に丸める。
console.log(Math.floor(3.9)); // 3
console.log(Math.floor(-3.9)); // -4
Math.ceil()
小数点以下を切り上げる
常に「大きい方向」に丸める。
console.log(Math.ceil(3.1)); // 4
console.log(Math.ceil(-3.1)); // -3
Math.round()
四捨五入する
0.5以上なら切り上げ、未満なら切り捨て。
console.log(Math.round(3.4)); // 3
console.log(Math.round(3.5)); // 4
toFixed()
小数点以下の桁数を指定して丸める(文字列を返す)
let num = 3.14159;
console.log(num.toFixed(2)); // "3.14"
console.log(Number(num.toFixed(0))); // 3
toLocaleString()
数値を「カンマ区切り」などのローカル形式で表示する
let price = 1234567.89;
console.log(price.toLocaleString()); // "1,234,567.89"
console.log(price.toLocaleString('ja-JP', { style: 'currency', currency: 'JPY' }));
// "¥1,234,568"
Math.random()
0以上1未満の乱数を生成
console.log(Math.random()); // 0.123456...(毎回違う値)
// 1〜10の整数をランダムに出す例
let num = Math.floor(Math.random() * 10) + 1;
console.log(num);
Math.max()
複数の数の中から最大値を返す
console.log(Math.max(3, 8, 1, 9)); // 9
配列から最大値を出したいとき👇
let arr = [3, 8, 1, 9];
console.log(Math.max(...arr)); // 9
Math.min()
複数の数の中から最小値を返す
console.log(Math.min(3, 8, 1, 9)); // 1
配列から最小値を出す👇
let arr = [3, 8, 1, 9];
console.log(Math.min(...arr)); // 1
Math.PI
円周率(π ≒ 3.14159)を返す
console.log(Math.PI); // 3.141592653589793
Math.sqrt(a)
平方根(ルート)を返す
console.log(Math.sqrt(9)); // 3
console.log(Math.sqrt(2)); // 1.4142135623730951
Math.sin() / Math.cos()
三角関数(ラジアン単位)
console.log(Math.sin(Math.PI / 2)); // 1
console.log(Math.cos(Math.PI)); // -1
角度で指定したい場合は、度数法→ラジアン変換が必要:
let degree = 30;
let radian = degree * (Math.PI / 180);
console.log(Math.sin(radian)); // 0.5
まとめ
| メソッド | 目的 | 例 | 結果 |
|---|---|---|---|
Math.floor(3.9) |
小数点切り捨て | 3 |
|
Math.ceil(3.1) |
小数点切り上げ | 4 |
|
Math.round(3.4) |
四捨五入 | 3 |
|
num.toFixed(2) |
小数点以下2桁に丸め | "3.14" |
|
price.toLocaleString() |
カンマ区切り表示 | "1,234,567.89" |
|
Math.random() |
0〜1未満の乱数 | 例: 0.12345
|
|
Math.max(...arr) |
最大値 | [3, 8, 1, 9] |
9 |
Math.min(...arr) |
最小値 | [3, 8, 1, 9] |
1 |
Math.PI |
円周率 | 3.14159... |
|
Math.sqrt(9) |
平方根 | 3 |
|
Math.sin(Math.PI / 2) |
サイン(ラジアン) | 1 |
|
Math.cos(Math.PI) |
コサイン(ラジアン) | -1 |
メモ程度に書いてみました。参考になれば嬉しいです!
Discussion