对于这种情况有没有更短的方法?

时间:2010-09-21 10:55:14

标签: javascript

if (form.a.value !=""&&form.b.value!="" &&form.c.value !="")

对于这种情况有没有更短的方法?

3 个答案:

答案 0 :(得分:3)

Javascript是弱类型的,因此您可以将空字符串视为布尔值false,因此以下代码应该有效:

if (form.a.value && form.b.value && form.c.value) {

但是我不知道您为什么要更改该代码。实际上它非常清晰而且冗长。

答案 1 :(得分:2)

如果您只有三个(或更少)字段,则可以保留原样。如果要检查更多(或未知)数量的字段,请创建一个字段数组以进行检查,并在单独的函数中执行循环检查以获得更好的可维护性。像这样:

if(!Empty([form.a,form.b,form.c]))
{
...
}

function Empty(elements)
{
    for(var i=0;i<elements.length;i++)
    {
        if(elements[i].value)
            return false;      
    }
}

答案 2 :(得分:1)

有懒惰的方式:)

if(form.a.value + form.b.value + form.c.value != "" )

if(form.a.value.length + form.b.value.length + form.c.value.length != 0 )

if(!form.a.value && !form.b.value && !form.c.value) 
相关问题