javascript:没有定义的变量和没有定义的属性

1. 没有定义的变量

    window.onload = function() {
        alert(a);
        // 报错: Uncaught ReferenceError: a is not defined
        // alert不会执行
    };

2. 没有定义的属性

    window.onload = function() {
        alert(window.a);
        // alert会执行,弹出'undefined'
    }; 

总结:

用没有定义的变量——报错
用没有定义的属性——undefined

所有的变量都是window对象的一个属性,所以在判断某个变量是否有值时,可以在变量前加'window.',防止程序在执行过程中报错。
原文地址:https://www.cnblogs.com/zj0208/p/8317480.html