有没有办法防止未定义的javascript变量在插入html时显示'undefined'?

Hal*_*ton 5 html javascript variables undefined

我将存储在javascript变量中的文本追加到div元素中.问题在于,根据情况,可能存在或可能不存在该变量中存储的文本.如果没有,我最终得到文本'undefined',其中有效文本将在div中.

举个例子:

htmlelement.innerhtml = '<h2>'+array.object.title+
                        '</h2><p>'+array.object.textField1+
                        '</p><p>'+array.object.textField2+
                        '</p><p>'+array.object.textfield3+'</p>';
Run Code Online (Sandbox Code Playgroud)

这将显示在将为数组中的每个对象运行的函数中.并非所有对象都包含所有3个文本字段中的内容.

那么是否有一种简单的方法可以防止"未定义"被打印出来?

现在我在前一行之前有这个:

if (!array.object.textfield1) {
    array.object.textfield1 = ' ';
}
if (!array.object.textfield2) {
    array.object.textfield2 = ' ';
}
if (!array.object.textfield3) {
    array.object.textfield3 = ' ';
}
Run Code Online (Sandbox Code Playgroud)

但如果需要检查很多变量,这不是一个实用的解决方案.

NIN*_*OOP 11

你能用逻辑运算符||吗?

array.object.textField1||''
Run Code Online (Sandbox Code Playgroud)

注意:注意0或任何其他falsy值的值.

  • 唯一的问题是`array.object.textField1 == 0`或一些假值.OP可以记下这一点. (2认同)