typeof、undefined 和 null

245 阅读1分钟

typeof 是运算符,注意不是函数,是运算符,其作用,是考察变量究竟是什么类型。或曰,是变量是否定义或是否初始化的照妖镜。返回值是字符串。

undefined 表示一个对象没有被定义或者没有被初始化。\

null 表示一个尚未存在的对象的占位符。

\

测试一,变量没有定义的时候,只能使用 typeof

    <input type="button" id="btnTest" οnclick="Test()" value="测试" />
    <script type="text/javascript">
        function Test() {
            alert(i == null);               //报错
            alert(i == undefined);          //报错
            alert(typeof i == "undefined"); //true
        }
    </script>


测试二,变量有定义,但未初始化,typeof,undefined,null都可以使用 

   <script type="text/javascript">
        function Test() {
            var i;
            alert(i == null);               //true
            alert(i == undefined);          //true
            alert(typeof i == "undefined"); //true
            i = 0;
            alert(i == null);               //false
            alert(i == undefined);          //false
            alert(typeof i == "undefined"); //false
        }
    </script>


测试三,函数参数跟变量类似

1、没有参数

    <input type="button" id="btnTest" οnclick="Test()" value="测试" />
    <script type="text/javascript">
        function Test(i) {
            alert(i == null);               //true
            alert(i == undefined);          //true
            alert(typeof i == "undefined"); //true
        }
    </script>


2、有参数

    <input type="button" id="btnTest" οnclick="Test(0)" value="测试" />
    <script type="text/javascript">
        function Test(i) {
            alert(i == null);               //false
            alert(i == undefined);          //false
            alert(typeof i == "undefined"); //false
        }
    </script>

\

参考文章:点击打开链接