0x0b
js_object-Global_
最終更新:
0x0b
-
view
Global
グローバルオブジェクトは Construct プロパティを持たない; new 演算子を添えてコンストラクタとしてグローバルオブジェクトを使用することはできない。
グローバルオブジェクトは Call プロパティを持たない。関数としてグローバルオブジェクトを呼び出すことはできない。
グローバルオブジェクトの Prototype 及び Class プロパティの値は実装依存である。
グローバルオブジェクトは Construct プロパティを持たない; new 演算子を添えてコンストラクタとしてグローバルオブジェクトを使用することはできない。
グローバルオブジェクトは Call プロパティを持たない。関数としてグローバルオブジェクトを呼び出すことはできない。
グローバルオブジェクトの Prototype 及び Class プロパティの値は実装依存である。
Global オブジェクトの値プロパティ
NaN
Nan の初期値は NaN(型 Number型)である。このプロパティの属性は { DontEnum, DontDelete } である。
Infinity
Infinity の初期値は +∞ (型 Number型) である。このプロパティの属性は { DontEnum, DontDelete } である。
undefined
undefined の初期値は undefined (型 Number型) である。このプロパティの属性は { DontEnum, DontDelete } である。
Global オブジェクトの関数プロパティ
eval (x)
eval 関数が引数 x で呼出されるとき、次のステップが取られる:
eval プロパティの値は直接呼出し以外 (つまり、 CallExpression 中の MenberExpression である Identifier としてのその名前の明示的な利用による以外) の任意の方法で用いられるか、または eval プロパティに割り当てられていれば、例外 EvalError を投げてよい。
eval プロパティの値は直接呼出し以外 (つまり、 CallExpression 中の MenberExpression である Identifier としてのその名前の明示的な利用による以外) の任意の方法で用いられるか、または eval プロパティに割り当てられていれば、例外 EvalError を投げてよい。
parseInt (string , radix)
parseInt 関数は、 radix の指定にしたがい引数 string の内容を解釈して判定される整数値を生成する。文字列内の先行する空白文字は無視される。 radix が undefined または 0 ならば、それは 10 と仮定される。その数字が文字 0x または 0X で始まる場合は radix は 16 と仮定される。任意の radix-16 数は文字 0x または 0X で始まってもよい。
parseInt 関数が呼出されると、次のステップが取られる:
NOTE parseInt は、文字列の先行する成分だけを整数値として解釈してよい; それは整数表記の一部として解釈できない任意の文字を無視し、そのような文字が無視されたことのいかなる徴候も与えられない。
radix が 0 または undefined であり、 string の数が数字 0 で始まり x も X も続かないとき、実装は、自由な判断で、数を 8 進数とも 10 進数とも解釈してよい。実装はこの場合、 10 進数として数を解釈することが推奨される。
parseInt 関数が呼出されると、次のステップが取られる:
NOTE parseInt は、文字列の先行する成分だけを整数値として解釈してよい; それは整数表記の一部として解釈できない任意の文字を無視し、そのような文字が無視されたことのいかなる徴候も与えられない。
radix が 0 または undefined であり、 string の数が数字 0 で始まり x も X も続かないとき、実装は、自由な判断で、数を 8 進数とも 10 進数とも解釈してよい。実装はこの場合、 10 進数として数を解釈することが推奨される。
parseFloat (string)
parseFloat 関数は、 10 進数リテラルとして引数 string の内容解析器に書き取られる数値を生成する。
parseFloat 関数が呼出されると、次のステップが取られる:
NOTE parseFloat 文字列の先行する成分だけを数値として解釈してよい;
それは 10 進数表記の一部として解釈できない任意の文字を無視し、そのような文字が無視されたことのいかなる徴候も与えられない。
parseFloat 関数が呼出されると、次のステップが取られる:
NOTE parseFloat 文字列の先行する成分だけを数値として解釈してよい;
それは 10 進数表記の一部として解釈できない任意の文字を無視し、そのような文字が無視されたことのいかなる徴候も与えられない。
isNaN (number)
引数に ToNumber を適用し、結果が NaN であれば true, そうでなければ false を返す。
isFinite (number)
引数に ToNumber を適用し、結果が NaN, +∞, -∞ であれば false, そうでなければ true を返す。
URI 処理関数のプロパティ
Uniform Resource Identifiers, あるいは URI は、リソース (つまり、ウェブページやファイル)を識別する文字列であり、インターネット上でそれらにアクセスするプロトコル (すなわち HTTP や FTP) を輸送する。 ECMAScript 言語自身は、(decodeURI (encodedURI) decodeURIComponent (encodedURIComponent) encodeURI (uri) encodeURIComponent (uriComponent))
に URI を符号化また復号化する関数を述べるのみで、他の URI を使用するサポートを提供しない。
NOTE ECMAScript 実装の多くは、ウェブページを操作する追加の関数とメソッドを提供する; これらの関数はこの標準の適用範囲上にある。 URI は成分分離子によって分割された成分の並びで構成される。一般的な形式は:
に URI を符号化また復号化する関数を述べるのみで、他の URI を使用するサポートを提供しない。
NOTE ECMAScript 実装の多くは、ウェブページを操作する追加の関数とメソッドを提供する; これらの関数はこの標準の適用範囲上にある。 URI は成分分離子によって分割された成分の並びで構成される。一般的な形式は:
Scheme : First / Second ; Third ? Fourth
イタリック体の名前は成分をあらわし、 ":", "/", ";", "?" は分離子として使用される予約文字をあらわす。 encodeURI 関数と decodeURI 関数は、完璧な URI の動作を意図される; URI 中の任意の予約文字は、特殊な意味を持ち、従って符号化されないことが意図されると考える。 encodeURIComponent 関数と decodeURIComponent 関数は、 URI の個別の成分としての動作を意図される; 任意の予約文字はテキストをあらわし、したがって成分が完璧な URI の一部であるとき、予約文字として解析されないように符号化されなければならない、と考える。
次の字句文法は、符号化された URI の形式を規定する。
uri :::
uriCharactersopt
uriCharacters :::
uriCharacter uriCharactersopt
uriCharacter :::
uriReserved
uriUnescaped
uriEscaped
uriReserved ::: one of
; / ? : @ & = + $ ,
uriUnescaped :::
uriAlpha
DecimalDigit
uriMark
uriEscaped :::
% HexDigit HexDigit
uriAlpha ::: one of
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
uriMark ::: one of
次の字句文法は、符号化された URI の形式を規定する。
uri :::
uriCharactersopt
uriCharacters :::
uriCharacter uriCharactersopt
uriCharacter :::
uriReserved
uriUnescaped
uriEscaped
uriReserved ::: one of
; / ? : @ & = + $ ,
uriUnescaped :::
uriAlpha
DecimalDigit
uriMark
uriEscaped :::
% HexDigit HexDigit
uriAlpha ::: one of
a b c d e f g h i j k l m n o p q r s t u v w x y z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
uriMark ::: one of
- _ . ! ~ * ' ( )
URI 中に含まれる文字が、上に挙げられていないとき、また予約文字に与えられる特殊な意味を持つと意図されないとき、その文字は符号化されなければならない。文字はまず UTF-8 変換を用いてオクテットのシーケンスに変換される。サロゲートペア (surrogate pairs) はまず UCS-2 から UCS-4 符号化に変換される。 (範囲 [0, 127] のコードポイントについては、これは同じ値の単一のオクテットの結果である。) 結果のオクテットのシーケンスは、 "%xx" 形式のエスケープシーケンスであらわされる各オクテットの文字列に変換される。
符号化とエスケープの処理は、 2 個の文字列引数 string と unescapedSet をとる隠し関数 Encode によって記述される。この関数は解説上の目的でのみ定義される。
アンエスケープと復号化の処理は、 2 個の文字列引数 string と reservedSet をとる隠し関数 Decode によって記述される。この関数は解説上の目的でのみ定義される。
NOTE Uniform Resource Identifiers の構文は、 RFC2396 で与えられる。
NOTE UTF-8 の公式な説明と実装は、 Unicode Standard, Version 2.0, Appendix A で与えられる。
UTF-8 では、 1 個から 6 個のオクテットのシーケンスで符号化される。ある一つの "シーケンス" のオクテットだけが上位ビットを 0 に設定し、残り 7 ビットは文字値の符号化に使用されている。 n 個のオクテットのシーケンスにおいて、 n>1 として、最初のオクテットは n 個の上位ビットを 1 に設定, 続くビットを 0 に設定する。オクテットの残りのビットは、符号化される文字の値からのビットで構成される。続くオクテットの全ては上位ビットを 1 に設定し、続くビットを 0 に設定、それぞれ残り 6 ビット 符号化された文字からのビットで構成される。 ECMAScript 文字の可能な UTF-8 符号は:
符号化とエスケープの処理は、 2 個の文字列引数 string と unescapedSet をとる隠し関数 Encode によって記述される。この関数は解説上の目的でのみ定義される。
アンエスケープと復号化の処理は、 2 個の文字列引数 string と reservedSet をとる隠し関数 Decode によって記述される。この関数は解説上の目的でのみ定義される。
NOTE Uniform Resource Identifiers の構文は、 RFC2396 で与えられる。
NOTE UTF-8 の公式な説明と実装は、 Unicode Standard, Version 2.0, Appendix A で与えられる。
UTF-8 では、 1 個から 6 個のオクテットのシーケンスで符号化される。ある一つの "シーケンス" のオクテットだけが上位ビットを 0 に設定し、残り 7 ビットは文字値の符号化に使用されている。 n 個のオクテットのシーケンスにおいて、 n>1 として、最初のオクテットは n 個の上位ビットを 1 に設定, 続くビットを 0 に設定する。オクテットの残りのビットは、符号化される文字の値からのビットで構成される。続くオクテットの全ては上位ビットを 1 に設定し、続くビットを 0 に設定、それぞれ残り 6 ビット 符号化された文字からのビットで構成される。 ECMAScript 文字の可能な UTF-8 符号は:
コードポイント値 | 表現 | 1st Octet | 2nd Octet | 3rd Octet | 4th Octet |
0x0000 - 0x007F | 00000000 0zzzzzzz | 0zzzzzzz | |||
0x0080 - 0x07FF | 00000yyy yyzzzzzz | 110yyyyy | 10zzzzzz | ||
0x0800 - 0xD7FF | xxxxyyyy yyzzzzzz | 1110xxxx | 10yyyyyy | 10zzzzzz | |
0xD800 - 0xDBFF&br(0xDC00 - 0xDFFFが後に続く) | 110110vv vvwwwwxx |
11110uuu | 10uuwwww | 10xxyyyy | 10zzzzzz |
0xD800 - 0xDBFF&br(0xDC00 - 0xDFFFが後に続かない) | 例外 URIError が発生 | ||||
0xDC00 - 0xDFFF | 例外 URIError 発生 | ||||
0xE000 - 0xFFFF | xxxxyyyy yyzzzzzz | 1110xxxx | 10yyyyyy | 10zzzzzz |
Where
uuuuu = vvvv + 1
to account for the addition of 0x10000 as in 3.7, Surrogates Unicode Standard version 2.0.
コードポイント値 0xD800-0xDFFF の範囲がサロゲートペアの符号化に使用される; 上記の変換は UCS-2 のサロゲートペアを UCS-4 表現に結合し、結果の 21 ビット値を UTF-8 に符号化する。復号化は、サロゲートペアを再構築する。
コードポイント値 0xD800-0xDFFF の範囲がサロゲートペアの符号化に使用される; 上記の変換は UCS-2 のサロゲートペアを UCS-4 表現に結合し、結果の 21 ビット値を UTF-8 に符号化する。復号化は、サロゲートペアを再構築する。
decodeURI (encodedURI)
decodeURI 関数は新しいバージョンの URI を算出する。その中で、各エスケープシーケンスと encodeURI 関数により取り入れられる種類の UTF-8 符号は、そのあらわす文字に置換される。 encodeURI により取り入れられることのないエスケープシーケンスは置換されない。
decodeURI 関数が 1 個の引数 encodedURI で呼出されるとき、次のステップが取られる:
NOTE 文字 "#" は、 URI 予約文字でなくてもエスケープシーケンスから復号されない。
decodeURI 関数が 1 個の引数 encodedURI で呼出されるとき、次のステップが取られる:
NOTE 文字 "#" は、 URI 予約文字でなくてもエスケープシーケンスから復号されない。
decodeURIComponent (encodedURIComponent)
decodeURIComponent 関数は新しいバージョンの URI を算出する。その中で、各エスケープシーケンスと encodeURIComponent 関数により取り入れられる種類の UTF-8 符号は、そのあらわす文字に置換される。
decodeURIComponent 関数が 1 個の引数 encodedURIComponent で呼出されるとき、次のステップが取られる:
decodeURIComponent 関数が 1 個の引数 encodedURIComponent で呼出されるとき、次のステップが取られる:
encodeURI (uri)
encodeURI 関数は、新しいバージョンの URI を算出する。その中で一定の文字の各インスタンスは、文字の UTF-8 符号をあらわす 1,2,3 個のエスケープシーケンスによって置換される。
encodeURI 関数が 1 個の引数 uri で呼出されるとき、次のステップが取られる:
NOTE 文字 "#" は、予約文字でも非エスケープ文字でもないが、エスケープシーケンスに符号化されない。
encodeURI 関数が 1 個の引数 uri で呼出されるとき、次のステップが取られる:
NOTE 文字 "#" は、予約文字でも非エスケープ文字でもないが、エスケープシーケンスに符号化されない。
encodeURIComponent (uriComponent)
encodeURIComponent 関数は、 URI の新しいバージョンを算出する。その中で、一定の文字のインスタンスは、文字の UTF-8 符号化をあらわす 1,2,3 個のエスケープシーケンスに置換される。
encodeURIComponent が 1 個の引数 uriComponent で呼出されるとき、次のステップが取られる:
encodeURIComponent が 1 個の引数 uriComponent で呼出されるとき、次のステップが取られる: