3

Null実際に関数からの戻り値としてデータ型を取得することは可能ですか?typeofもしそうなら、どのような場合にその結果が得られますか?変数が実際にその Null型になるのはいつですか?

    typeof myVAR; //gives me "undefined" before the variable declaration

    var myVAR;
    typeof myVAR; //also gives me "undefined"

    myVAR = null; //assigned the null object
    typeof myVAR; //gives me "Object" (which I guess makes sense because `null` is an object and that's what I assigned to the variable)
4

1 に答える 1

8

typeofを返すことは"null"ありませんが、内部の null 型があります。

結果のタイプ:

  • 未定義:「未定義」
  • Null:「オブジェクト」
  • ブール値:「ブール値」
  • 数字:「数」
  • 文字列:「文字列」
  • オブジェクト (ネイティブで [[Call]] を実装していない): "object"
  • オブジェクト (ネイティブまたはホストで、[[Call]] を実装している): "関数"
  • オブジェクト (ホストであり、[[Call]] を実装していません): "undefined"、"boolean"、"number"、または "string" であってはならないことを除いて、実装によって定義されます。

null をテストする唯一の方法は、演算子nullを使用して値と直接比較することです。===

于 2013-10-15T00:19:01.617 に答える