检查javascript中的空对象

检查javascript中的空对象,javascript,null,Javascript,Null,我有以下代码段,它在我的表单中定义了属性值 function retrieve(){ setSelectedIndex(document.producerSetForm.GA1,"<%=ssnGA1%>"); setSelectedIndex(document.producerSetForm.GA2,"<%=ssnGA2%>"); setSelectedIndex(document.producerSetForm.GA3,"<%=ssnGA3

我有以下代码段,它在我的表单中定义了属性值

function retrieve(){
    setSelectedIndex(document.producerSetForm.GA1,"<%=ssnGA1%>");
    setSelectedIndex(document.producerSetForm.GA2,"<%=ssnGA2%>");
    setSelectedIndex(document.producerSetForm.GA3,"<%=ssnGA3%>");
    setSelectedIndex(document.producerSetForm.GA4,"<%=ssnGA4%>");
    setSelectedIndex(document.producerSetForm.GA5,"<%=ssnGA5%>");
}
函数检索(){
setSelectedIndex(document.producerSetForm.GA1,“”);
setSelectedIndex(document.producerSetForm.GA2,“”);
setSelectedIndex(document.producerSetForm.GA3,“”);
setSelectedIndex(document.producerSetForm.GA4,“”);
setSelectedIndex(document.producerSetForm.GA5,“”);
}
其中,ssnGA1、ssnGA2等可能有值,也可能没有值。我需要检查它们是否有值来进行更多处理。我试过了

var len=<%=ssnGA1.toString().length()%>;
if(len !=0)
var len=;
如果(len!=0)

但只有当值存在时,它才起作用。否则会导致javascript错误。请帮忙。谢谢

您必须首先检查您的字符串是否未定义/null,例如:

if ( ssnGA1 && ssnGA1.toString().length ) {
  // do something
}

另外,
length
是一个属性,而不是一个函数;警报(类型(str));我得到的类型是数字。因此无法根据长度或任何其他属性检查字符串;(我猜ssnGA2.toString()会返回一个数字)。我试过了,但它不起作用。由于其返回号码无法执行任何检查。返回java脚本错误。str有一个数字。如果ssnGA2属性没有值var str=将不起作用。需要其他方法来检查吗