Javascript 如何验证creativeId是否为null

Javascript 如何验证creativeId是否为null,javascript,adsense,double-click,Javascript,Adsense,Double Click,我使用这段代码来验证creativeId是否为空,但它突然停止工作 googletag.pubads().addEventListener('slotRenderEnded', function(event) { if(event.slot.k.indexOf('_super_superior')>0) { if(event.creativeId!=null) { alert('DFP'); } else {

我使用这段代码来验证
creativeId
是否为空,但它突然停止工作

googletag.pubads().addEventListener('slotRenderEnded', function(event) {
    if(event.slot.k.indexOf('_super_superior')>0) {
        if(event.creativeId!=null) {
            alert('DFP');
        }
        else {
            alert('Adsense');
        }
    }
});
creativeId现在似乎总是未定义,因此我无法运行该函数

是否有其他方法来验证
creativeId
是否为空,以便我可以检测什么是ad是DFP,什么是AdX

谢谢

您可以这样尝试:

if(event.creativeId!=null || event.creativeId!= undefined)
您可以这样尝试:

if(event.creativeId!=null || event.creativeId!= undefined)

尝试此操作,检查字符串
'undefined'
不起作用,因为
undefined
不是一个字符串,当检查
类型的
结果时,字符串
'undefined'

if (event.creativeId!=null || event.creativeId != undefined)


typeof
方式应该是这样的,而不是
typeof event.creativeId!='undefined'

试试这个,检查字符串
'undefined'
不起作用,因为
undefined
不是字符串,字符串
'undefined'
是根据
typeof
结果检查的

if (event.creativeId!=null || event.creativeId != undefined)


typeof
方式应该是这样的,而不是
typeof event.creativeId!='未定义“

您编写的代码将区分
null
和非
null
值,但是
null
undefined
不同

要显式测试
null

if (event.creativeId === null) { ... }
要明确测试
未定义的

if (event.creativeId === undefined) { ... } // preferred by Crockford

考虑到您现有的逻辑,您可能只想使用来控制分支:

googletag.pubads().addEventListener('slotRenderEnded', function(event) {
    if (event.slot.k.indexOf('_super_superior') > 0) {
        if (event.creativeId) { // if event.creativeId exists / is numeric and non-zero / is a non-empty string / etc.
            alert('DFP');
        } else {
            alert('Adsense');
        }
    }
});

您编写的代码将区分
null
和非
null
值,但是
null
undefined
不同

要显式测试
null

if (event.creativeId === null) { ... }
要明确测试
未定义的

if (event.creativeId === undefined) { ... } // preferred by Crockford

考虑到您现有的逻辑,您可能只想使用来控制分支:

googletag.pubads().addEventListener('slotRenderEnded', function(event) {
    if (event.slot.k.indexOf('_super_superior') > 0) {
        if (event.creativeId) { // if event.creativeId exists / is numeric and non-zero / is a non-empty string / etc.
            alert('DFP');
        } else {
            alert('Adsense');
        }
    }
});

@gillesc:-是的,那是一个拼写错误,但在我获得否决票的那一刻修复了它:(@gillesc:-是的,那是一个拼写错误,但在我获得否决票的那一刻修复了它:(