我正在检查是否定义了变量。它在Firefox中正常工作,当涉及到Chrome时,它无法正常工作:
if(window[myClass] == undefined)
{
return;
}
如果未定义变量,则应返回。
我正在使用window[myClass]
,因为我正在从onclick
事件中获取id的名称,并且如果定义了变量则使用相同的命名变量作为id,否则部分应该或者如果没有定义则部分应该工作。
答案 0 :(得分:4)
你应该做这样的事情来检查是否定义了window[myclass]
:
if (typeof window[myclass] === 'undefined') {
但如果我正确理解了这个问题,你可能会想看看window[myclass]
是否存在。通常你这样做:
if (window.hasOwnProperty(myclass)) {
此外,myclass
是变量还是字符串('myclass'
)?
答案 1 :(得分:1)
从问题的最后一句,myClass
之类的声音实际上是文档中某些元素的ID。
在这种情况下,您应该使用此类代码来检查此元素是否确实存在:
if (!document.getElementById(myClass))
return;
当具有此ID的元素不存在时,这将取消该功能。
答案 2 :(得分:0)
if (typeof window[myClass] !== 'undefined') {
//do stuff
} else {
alert('undefined');
}