Javascript检查变量是否未定义

tra*_*nte 0 javascript adsense

要检查adsense脚本是否已加载,我使用:

var isAdsenseNotLoaded = (typeof adsbygoogle.loaded === 'undefined');
Run Code Online (Sandbox Code Playgroud)

但是很多用户在堆栈跟踪中有这个错误:

ReferenceError: adsbygoogle is not defined
    at http://example.com/file.js:1:42020
Run Code Online (Sandbox Code Playgroud)

那么我也应该检查是否adsbygoogle也是adsbygoogle.loaded

Pat*_*ssa 11

您需要先检查是否adsbygoogle已定义:

var isAdsenseNotLoaded = !adsbygoogle || typeof adsbygoogle.loaded === 'undefined';