JavaScript(7)-数値に関する質問
3162 ワード
数値タイプ変数と数値オブジェクト変数
面白いNumbertoString()メソッド
出力のフォーマット
ブールから数値
文字列から数値
parseFloat:文字列を浮動小数点数に変換
parseInt:文字列を整数に変換
var N, n;
N = new Number(123); //
n = 321; // , Number
alert(N); //123
alert(n); //321
面白いNumbertoString()メソッド
var str, n = 65535;
str = n.toString();
alert(str); //65535
str = n.toString(2); //
alert(str); //1111111111111111
str = n.toString(8); //
alert(str); //177777
str = n.toString(16); //
alert(str); //ffff
str = n.toString(32); // ( 2-36)
alert(str); //1vvv
出力のフォーマット
var str, n = 123456.789;
str = n.toLocaleString(); //
alert(str); //123,456,79
str = n.toFixed(0); //
alert(str); //1234567
str = n.toFixed(2); //2
alert(str); //1234567.78
str = n.toExponential(1); // (1 ), 1
alert(str); //1.2e+5
str = n.toExponential(3); // (1 ), 3
alert(str); //1.235e+5
str = n.toPrecision(5); // 5
alert(str); //1.2346e+5
str = n.toPrecision(7); // 7
alert(str); //123456.8
ブールから数値
var b = false, n = 123;
n = b + n;
alert(n); //123
b = !b;
n = b + n;
alert(n); //124
文字列から数値
var n;
n = '111' + 0; //
alert(n); //1110
n = '111' - 0; //
alert(n); //111
alert('111' + 1); //1111
alert('111' - 1); //110
parseFloat:文字列を浮動小数点数に変換
var num;
num = parseFloat('1.23');
alert(num); //1.23
num = parseFloat('1.23AB456');
alert(num); //1.23
num = parseFloat('-1.23X');
alert(num); //-1.23
num = parseFloat('X1.23X');
alert(num); //NaN ( )
num = parseFloat('');
alert(num); //NaN ( )
num = parseFloat('0xFFFF'); // , 0
alert(num); //0
/* ... */
num = "1.23" - 0;
alert(num); //1.23
/* , parseFloat ... */
num = "1.23ABC" - 0;
alert(num); //NaN
parseInt:文字列を整数に変換
var num;
num = parseInt("123ABC");
alert(num); //123
num = parseInt("-123ABC");
alert(num); //-123
num = parseInt("1.23ABC"); //
alert(num); //1
/* */
num = parseInt("0xFF"); //
alert(num); //255
num = parseInt("-0Xff"); //
alert(num); //-255
/* , */
num = parseInt("1111111111111111", 2);
alert(num); //65535
num = parseInt("FFFF", 16);
alert(num); //65535
num = parseInt("ffff", 16);
alert(num); //65535
num = parseInt("0xffff", 16);
alert(num); //65535
num = parseInt("177777", 8);
alert(num); //65535
num = parseInt("1vvv", 32);
alert(num); //65535
num = parseInt("FFFF", 10);
alert(num); //NaN