如何确定值是否未定义

时间:2010-09-26 13:01:23

标签: javascript asp-classic

我在经典的asp页面中有这个javascript ...

我需要找出x.name是否未定义或具有值:

x=document.getElementsByTagName("meta")[i];
if (String(x.name) != "undefined" && String(x.name) != ""){
document.write(""+x.name +": "+x.content+"<br><br>");
}

我不确定为什么会抛出错误:

document.write(""+x.name +": "+x.content+"<br><br>");

如果x.name或x.content为false?

由于

2 个答案:

答案 0 :(得分:1)

检查未定义:

if (typeof x !== 'undefined') {
  if (x.name) {
    document.write(x.name + ': ' + x.content + '<br><br>');
  }
}

现在,我不知道你要对document.write()调用做什么,所以这也可能会导致问题,但上面的内容将确保你只在“x”存在并且有一个非空的“名称”属性。

答案 1 :(得分:0)

它抛出一个错误,因为你很可能在实例化之前尝试写一个元素的值。直到您的页面加载它的元素不存在或从此以后它们不能被引用。

相关问题