とほほのJavaScript入門(ビルトイン関数)

とほほのWWW入門 > とほほのJavaScript入門 > ビルトイン関数
1998年12月20日版

ビルトイン関数

escape(string) (e3/N2)
stringの文字列のうち、URLに用いることができない記号や日本語を %nn の形式にエンコードしたものを返す。不特定の文字列をURLに埋め込んだり、Cookieのパラメータとして指定する際にこの関数を用いてエンコードする。 例えば次の例は "いろは" は "%82%A2%82%EB%82%CD" に変換される。
    str = escape("いろは");
IE4.0以降ではUnicodeにエンコードするように仕様が変更されており、"いろは" を "%u3044%u308D%u306F" にエンコードしてしまう。UnicodeとJIS/SJIS/EUCの変換は漢字コード表を用いて1文字1文字変換するしか手が無い。

unescape(string) (e3/N2)
%nnや、%uxxxxの形式に変換された文字列を元の文字列に逆変換する。
    str = unescape("%82%A2%82%EB%82%CD");

Number(xxx) (e4/N4)
xxxを数値に変換する。xxxが日付オブジェクトの場合は1970年1月1日0時0分0秒(GMT)からの秒数(ミリ秒単位)を返す。変換に失敗した場合は特殊な値 NaN を返す。古いバージョンを考慮するならeval()を用いたり、0を引いたりするとよい。
    num = Number("123") + Number("456");
    alert(typeof("123") + typeof("123" - 0));

String(num) (e4/N4)
numを文字列に変換する。古いバージョンを考慮するなら 123 + "" とすればよい。
    str = String(123) + String(456);

parseFloat(string) (e?/N2)
文字列stringを数値に変換する。 NN3.0以降では変換に失敗した場合は NaN を返す。

parseInt(string,radix) (e?/N2)
文字列stringを整数値に変換する。 radixに2,8,10,16などを指定すると2,8,10,16進数として解釈する。 radixを省略した場合、"0x"で始まっていれば16進数として、"0"で始まっていれば8進数として、さもなくば10進数として解釈する。 NN3.0以降では変換に失敗した場合は NaN を返す。

isNaN(value) (e4/N3)
valueが数値かどうかを調べる。数値、または数値として解釈可能な文字列であればfalse、さもなくばtrueを返す。 NaNはNot a Numberの意味。 NN2.0ではUNIX版のみ、NN3.0以降では全OS版で使用可能。
    if (isNaN(xx = parseInt(str))) {
        alert("Not a Number");
    }

isFinite(num) (e4/N45)
numが有限の数値であれば true、さもなくば false を返す。

eval(statements) (e3/N2)
statementsをJavaScriptの構文と解釈して実行し、その結果を返す。 次の例ではansに27が代入される。
    ans = eval("3+(6*4)");

taint()
N3のみ。NN4.0では削除された。

untaint()
N3のみ。NN4.0では削除された。

Copyright (C) 1996-1999 とほほ
http://wakusei.cplaza.ne.jp/twn/wwwjsbui.htm