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