exp を数値に変換します。exp が日付オブジェクトの場合は1970年1月1日0時0分0秒(GMT)からの秒数(ミリ秒単位)を返します。変換に失敗した場合は特殊な値 NaN を返します。Number() をサポートしていない古いバージョンのブラウザを考慮するなら、単に値から 0 を引くことで、数値に変換することもできます。
num = Number("123") + Number("456"); // 579 となる num = ("123" - 0) + ("456" - 0); // 579 となる
文字列 string を数値に変換します。Netscape Navgator 3.0 以降では変換に失敗した場合は特別な値 NaN を返します。
num = parseFloat("1.23"); // 1.23 となる
文字列 string を整数値に変換します。小数点以下は切り捨てられます。radix に 2, 8, 10, 16 などを指定すると 2, 8, 10, 16進数として解釈します。radix を省略した場合、"0x" で始まっていれば 16進数として、"0" で始まっていれば 8進数として、さもなくば 10進数として解釈します。変換に失敗した場合は特別な値 NaN を返します。
xx = parseInt("1.99"); // 1 となる xx = parseInt("123abc"); // 123 となる xx = parseInt("abc123"); // NaN となる xx = parseInt("0xff"); // 255 となる xx = parseInt("0777"); // 511 となる xx = parseInt("ab", 16); // 171 となる
num を文字列に変換する。古いバージョンのブラウザを考慮するなら 123 + "" とすればよい。
str = String(123) + String(456); // "123456" となる str = (123 + "") + (456 + ""); // "123456" となる
string の文字列のうち、URL として用いることができない記号や日本語を %nn の形式にエンコードしたものを返します。不特定の文字列を URL に埋め込んだり、Cookie のパラメータとして指定する際にこの関数を用いてエンコードします。
str = escape("いろは");
古いブラウザでは "いろは" をシフトJISならシフトJISのまま "%82%A2%82%EB%82%CD" に変換しますが、Internet Explorer 4.0 以降では日本語を Unicode(UCS-2)にエンコードするように仕様が変更されており、"いろは" を "%u3044%u308D%u306F" にエンコードしてしまいます。Unicode を JIS、シフトJIS、EUC などに変換する場合は、JavaScript の unescape() を用いるか、漢字コード表を用いて1文字1文字変換する必要があります。
IE で、Netscape と同様のエンコード文字列を得る方法を「escape()でシフトJISエンコードする」で紹介していますので、参照してください。(2002.7.14追記)
%nn や %uxxxx の形式に変換された文字列を元の文字列に逆変換します。
str = unescape("%82%A2%82%EB%82%CD");
value が数値でないことをチェックします。数値、または数値として解釈可能な文字列であれば偽、さもなくば真を返します。NaN は Not a Number の意味です。
if (isNaN(num = parseInt(str))) { alert("数値ではありません。"); }
num が有限の数値であれば真、さもなくば偽を返します。
statements を JavaScript の構文と解釈して実行し、その結果を返します。次の例では ans に 27 が代入されます。
ans = eval("3 + (6 * 4)");
JavaScript では、通常、別のウィンドウやフレームに対する値の参照に制限がありますが、taint() を用いることにより、この制限を一時的に解除します。untaint() は再度制限をかけます。ただし、このメソッドは Netscape Navigator 3.0 でしかサポートされていませんので、あまり使用されることはありません。