jQuery.append nothing-三元运算符

jQuery.append nothing-三元运算符,jquery,append,ternary-operator,Jquery,Append,Ternary Operator,我有一个网页,它根据一些布尔标志,将各种元素附加到HTML页面 为了使代码简洁,我尽量使用三元运算符,以节省if语句的负载 然而,我想知道,当使用三元运算符时,如果我的三元运算符失败,最好的做法是不向动态创建的元素追加任何元素(如果有意义的话)。即: $('<div>').append( (myBooleanFlag ? $('<p>Some child element</p>') : /*What here???*/) ); 那么你认为哪一个最好?

我有一个网页,它根据一些布尔标志,将各种元素附加到HTML页面

为了使代码简洁,我尽量使用三元运算符,以节省
if
语句的负载

然而,我想知道,当使用三元运算符时,如果我的三元运算符失败,最好的做法是不向动态创建的元素追加任何元素(如果有意义的话)。即:

$('<div>').append(
    (myBooleanFlag ? $('<p>Some child element</p>') : /*What here???*/)
);
那么你认为哪一个最好?

var result=myBooleanFlag$(“某些子元素”

):null;
var result =  myBooleanFlag ? $('<p>Some child element</p>') : null;

$('<div>').append(result);
$('')。追加(结果);
var result=myBooleanFlag$(“某些子元素”

):null; $('')。追加(结果);
var result=myBooleanFlag$(“某些子元素”

):null; $('')。追加(结果);
var result=myBooleanFlag$(“某些子元素”

):null; $('')。追加(结果);
然而,我想知道,当使用三元运算符时,最好的做法是不附加任何元素

最佳实践是在不合适的情况下不使用三元运算符。如果您不知道第三个操作数是什么,那么很明显,这种情况不适合使用三元运算符

虽然您可以使用空白字符串:

$('<div>').append(
    (myBooleanFlag ? '<p>Some child element</p>' : '')
);
我不太愿意提及它,但另一种适用于这里的JavaScript习惯用法是使用
&&
运算符和表达式语句:

myBooleanFlag && $('<div>').append('<p>Some child element</p>');
…这与所有通常的编码惯例都有冲突,比如总是将
{}
与条件等一起使用。但是,这也是一种风格


旁注:您只需在上面的正例中使用字符串,在将其传递给
append
之前,无需在其上使用
$(…)
,因此我在上面省略了它

旁注2:当将条件作为参数传递给函数时,不需要在其周围放置paren

然而,我想知道,当使用三元运算符时,最好的做法是不附加任何元素

最佳实践是在不合适的情况下不使用三元运算符。如果您不知道第三个操作数是什么,那么很明显,这种情况不适合使用三元运算符

虽然您可以使用空白字符串:

$('<div>').append(
    (myBooleanFlag ? '<p>Some child element</p>' : '')
);
我不太愿意提及它,但另一种适用于这里的JavaScript习惯用法是使用
&&
运算符和表达式语句:

myBooleanFlag && $('<div>').append('<p>Some child element</p>');
…这与所有通常的编码惯例都有冲突,比如总是将
{}
与条件等一起使用。但是,这也是一种风格


旁注:您只需在上面的正例中使用字符串,在将其传递给
append
之前,无需在其上使用
$(…)
,因此我在上面省略了它

旁注2:当将条件作为参数传递给函数时,不需要在其周围放置paren

然而,我想知道,当使用三元运算符时,最好的做法是不附加任何元素

最佳实践是在不合适的情况下不使用三元运算符。如果您不知道第三个操作数是什么,那么很明显,这种情况不适合使用三元运算符

虽然您可以使用空白字符串:

$('<div>').append(
    (myBooleanFlag ? '<p>Some child element</p>' : '')
);
我不太愿意提及它,但另一种适用于这里的JavaScript习惯用法是使用
&&
运算符和表达式语句:

myBooleanFlag && $('<div>').append('<p>Some child element</p>');
…这与所有通常的编码惯例都有冲突,比如总是将
{}
与条件等一起使用。但是,这也是一种风格


旁注:您只需在上面的正例中使用字符串,在将其传递给
append
之前,无需在其上使用
$(…)
,因此我在上面省略了它

旁注2:当将条件作为参数传递给函数时,不需要在其周围放置paren

然而,我想知道,当使用三元运算符时,最好的做法是不附加任何元素

最佳实践是在不合适的情况下不使用三元运算符。如果您不知道第三个操作数是什么,那么很明显,这种情况不适合使用三元运算符

虽然您可以使用空白字符串:

$('<div>').append(
    (myBooleanFlag ? '<p>Some child element</p>' : '')
);
我不太愿意提及它,但另一种适用于这里的JavaScript习惯用法是使用
&&
运算符和表达式语句:

myBooleanFlag && $('<div>').append('<p>Some child element</p>');
…这与所有通常的编码惯例都有冲突,比如总是将
{}
与条件等一起使用。但是,这也是一种风格


旁注:您只需在上面的正例中使用字符串,在将其传递给
append
之前,无需在其上使用
$(…)
,因此我在上面省略了它


旁注2:将条件作为参数传递给函数时,无需在其周围加括号。

您只需使用
if
语句即可:

if(myBooleanFlag ){
    $('<div>').append('<p>Some child element</p>');
}
if(myBooleanFlag){
$('').append('一些子元素

); }
您只需使用
if
语句即可:

if(myBooleanFlag ){
    $('<div>').append('<p>Some child element</p>');
}
if(myBooleanFlag){
$('').append('一些子元素

); }
您只需使用
if
语句即可:

if(myBooleanFlag ){
    $('<div>').append('<p>Some child element</p>');
}
if(myBooleanFlag){
$('').append('一些子元素

); }
您只需使用
if
语句即可:

if(myBooleanFlag ){
    $('<div>').append('<p>Some child element</p>');
}
if(myBooleanFlag){
$('').append('一些子元素

); }
我不建议在这里使用三元运算符

无论
myBooleanFlag
的值是多少,您都将始终调用
append()
方法,即使根本不需要它。那么,即使没有任何附加内容,为什么还要调用jQuery函数两次呢

直接的
if
语句就足够了(而且可读性更好)

if(myBooleanFlag){
$(“”).append(“…”);
}

如果