ねっとぱんだ-プログラミング勉強ブログ-

Webデザイン、プログラミングの勉強ブログ。

【javascript】数値を扱うオブジェクト(Number,Math)【随時更新】

Numberオブジェクト

数値や浮動小数点を扱うことができる。
無限大や非数などを表すプロパティがある。

変数に数値を代入したり、数値を扱った計算をすると自動的で作成される。

Numbeobjectの生成

//変数numに1を生成
var num = new Number([1]);
//変数numに自動的に1を生成
var num = 1;

数値が未指定の場合は0になる。

valueOf
Numberオブジェクトが保持している数値を返す
var num = new Number([1]);
console.log(num.valueOf());
console.log(num);
/*この場合変数だけを指定すると
Number {[[PrimitiveValue]]: 1}
と返ってくる(計算などは問題なくできる)
プリミティブ型全体として参照するか
値だけを参照するかの違い?*/
toString
Numberオブジェクトが保持している数値を文字列で返す。
var num = new Number([1]);
console.log(num.toString());
Number.MAX_VALUE
jsで扱える数値の最大値
console.log(Number.MAX_VALUE);
Number.MIN_VALUE
jsで扱える数値の最小値
console.log(Number.MIN_VALUE);
Number.NaN
非数(Not a Number)を表す
console.log(Number.NaN);
NEGATIVE_INFINITY
jsで数値として扱えない負の無限大(-infinity)
console.log(Number.NEGATIVE_INFINITY);
POSITIVE_INFINITY
jsで数値として扱えない正の無限大(infinity)
console.log(Number.POSITIVE_INFINITY);

ーーーーーここから理解不足なので随時復習しますーーーーー

toExponential
引数の小数点以下の桁数でNumberオブジェクトが保持している数値を指数表記の文字列にして返す
var num = new Number([387])
console.log(num.toExponential());
指数
その数が数 a の n 乗( a n )で表される時のn のこと。
指数表記
数の桁長が表示幅をオーバーしたときe+2などで表す(e = exponent(指数))

参考【数の構成】指数表記と浮動小数点 | 大人が学び直す数学

toFixed
引数の小数点以下の桁数でNumberオブジェクトが保持している数値を引数で指定した数だけの固定小数点数表記の文字列にして返す
var num = new Number([1/3])
console.log(num.toFixed(4));

固定小数点数表記
「.」の左側に1以上、右側に1以下の値を表す表記の仕方
(例) 3.14
浮動小数点数表記
小数を○×△の□乗という形で表す。
(例)全て3.14を表している。3.14×100,31.4×10-1,314.0×10-2

toLocaleString
Numberオブジェクトが保持している数値を現地フォーマットに従った文字列で返す。
var num = new Number([387])
console.log(num.toLocaleString());
toPrecision
Numberオブジェクトが保持している数値を因数に指定した有効桁数で返す。
var num = new Number([387])
console.log(num.toPrecision(2));
valueOf
Numberオブジェクトが保持している数値を返す。
var num = new Number([387])
console.log(num.valueOf());

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

Mathオブジェクト

数値計算に利用するオブジェクト
アニメーションや図形描画の際は必要になってくる。

Mathオブジェクトの書き方

:new演算子で生成する必要はない

Math.プロパティ名
Math.メソッド名

数値の繰り上げ繰り下げ

round
小数点以下の四捨五入
console.log(Math.round(45.5));
ceil
小数点以下を繰り上げ
console.log(Math.ceil(45.4));
floor
小数点以下を繰り下げ
console.log(Math.floor(45.6));

数値の取得

max
複数の数値から最大値を取得
console.log(Math.max(1,2,3,4,5));
min
複数の数値から最大値を取得
console.log(Math.min(1,2,3,4,5));
abs
数値から記号を除いた絶対値を取得
console.log(Math.abs(-100));

乱数

random
0.0以上、1.0未満の値を擬似的にランダムに生成
console.log(Math.random());

1〜10の値を生成

console.log( Math.floor(Math.random() * 10 + 1) );

1〜6の値を生成

console.log( Math.floor(Math.random() * 6 + 1) );

【メモ】 parseIntとMath.floorの違い
マイナスの時の比較
Math.floorは直近の小さい整数を返す
Math.floor(-5.5) // -6が返る
parseIntrは小数点を切り捨てる
parseInt(-5.5) // -5が返る