JavaScript高級プログラム設計読書ノート(四)ECMAScriptの中のタイプ転換
2904 ワード
2.7タイプ変換
1、文字列に変換
すべてのオブジェクトにはtoStering()の方法があり、NumberタイプのtoStering()の方法は、デフォルトモードとベースモードの2つのモードがあり、デフォルトモードtoString()の方法では、対応する10進数の数値値を文字列だけで出力し、ベースモードでは異なる基数で出力することができます.例:
ECMAScriptは、数字ではない元の値を数値に変換する2つの方法を提供しています.パーrseInt()とパーrseFloat()は、パーrseInt()が1文字ずつ変換されています.数字ではない文字まで.サンプルプログラムは以下の通りです.
ECMAScriptで使用できる強制タイプの変換は以下の通りです.
Boolean(value)――与えられた値をBoolean型に変換します.
Number(value)――与えられた値を数値に変換する(整数または浮動小数点でもよい)
String(value)――与えられた値を文字列に変換する
例:
1、文字列に変換
すべてのオブジェクトにはtoStering()の方法があり、NumberタイプのtoStering()の方法は、デフォルトモードとベースモードの2つのモードがあり、デフォルトモードtoString()の方法では、対応する10進数の数値値を文字列だけで出力し、ベースモードでは異なる基数で出力することができます.例:
var iNum1=10;
var iNum2=10.0;
var iNum3=10;
alert(iNum1.toString()); //outpus "10"
alert(iNum2.toString()); //outpus "10"
alert(iNum3.toString(2)); //outpus "1010"
alert(iNum3.toString(8)); //outpus "12"
alert(iNum3.toString(16)); //outpus "A"
2、数字に変換するECMAScriptは、数字ではない元の値を数値に変換する2つの方法を提供しています.パーrseInt()とパーrseFloat()は、パーrseInt()が1文字ずつ変換されています.数字ではない文字まで.サンプルプログラムは以下の通りです.
var iNum1=parseInt("1234blue"); //returns 1234
var iNum2=parseInt("0xA"); //returns 10
var iNum3=parseInt("22.5"); //returns 22
var iNum4=parseInt("blue"); //returns NaN
parseInt()方法には基本パターンがあり、バイナリ、8進数、16進数、または他の任意の進数の文字列を整数に変換できます.ベースはパーrseInt()の2番目のパラメータで指定されています.例は以下の通りです.
var iNum1=parseInt("AF",16); //returns 175
var iNum2=parseInt("10",2); //returns 2
var iNum3=parseInt("10",8); //returns 8
var iNum4=parseInt("10",10); //returns 10
// : 0
var iNum5=parseInt("010"); //returns 8
var iNum6=parseInt("010",8); //returns 8
var iNum7=parseInt("010",10); //returns 10
paraseFloat()はベースパターンがなく、他はパーrseInt()とほぼ同じである.
var fNum1=paraseFloat("1234blue"); //returns 1234.0
var fNum2=paraseFloat("0xA"); //returns NaN
var fNum3=paraseFloat("22.5"); //returns 22.5
var fNum4=paraseFloat("22.34.5"); //returns 22.34
var fNum5=paraseFloat("0908"); //returns 908
var fNum6=paraseFloat("blue"); //returns NaN
3、強制タイプ変換ECMAScriptで使用できる強制タイプの変換は以下の通りです.
Boolean(value)――与えられた値をBoolean型に変換します.
Number(value)――与えられた値を数値に変換する(整数または浮動小数点でもよい)
String(value)――与えられた値を文字列に変換する
例:
var b1=Boolean(""); //false - empty string
var b2=Boolean("hi"); //true - not empty string
var b3=Boolean(100); //true - not zero number
var b4=Boolean(null); //false - null
var b5=Boolean(0); //false - zero
var b6=Boolean(new Object()); //true object
var i1=Number(false); //0
var i2=Number(true); //1
var i3=Number(undefined); //NaN
var i4=Number(null); //0
var f5=Number("5.5"); //5.5
var i6=Number("56"); //56
var i7=Number("5.6.7"); //NaN
var i8=Number(new Object()); //NaN
var i9=Number(100); //100
作者:天行健、自彊してやまない