obj = obj || {} 分析这个代码的起到的作用

情况一:

<script>
        function test(obj) {
            console.log(obj.value)
        }

        function student() {
            this.value = "foo";
        }
         var obj = new student();

        test(obj);
    </script>

结果:正常输出

情况二:假如obj为null或者undefined呢?

<script>
        function test(obj) {
            console.log(obj.value)
        }

        function student() {
            this.value = "foo";
        }
          var obj = null;
        test(obj);
    </script>

结果:报错

 

总结:只要加入以下这段代码就可以判断出对象是否为null或者undefined,避免报错。

obj = obj || {};

 

即使是null,也不会报错:

 

 

一开始我看代码也没明白是有什么作用,实践之后才明白,加入上面这行代码之后,即使是null都不会报错,只是为undefined。

 

posted @ 2019-07-03 17:05  沉迷编程的程序员  阅读(786)  评论(0编辑  收藏  举报