尽管有观点认为,在单行if语句中放弃花括号对于可维护性和可读性来说并不理想。

但是这个呢?

if (lemons) { document.write("foo gave me a bar"); }

它甚至更加压缩,如果展开,花括号也不会被忘记。是否存在明显的问题,如果没有,考虑的因素是什么?我觉得它还是很有可读性的,至少和三元运算符一样。在我看来,由于可读性,三元运算符不太被建议,尽管我觉得这个结论并不是很一致。

我内心的邪恶双胞胎想要建议这一点,尽管语法显然不是为它而设计的,而且可能只是一个坏主意。

(syntax) ? document.write("My evil twin emerges"): "";

当前回答

这一行要干净得多。

if(dog) alert('bark bark');

我更喜欢这个。希望它能帮助到别人

其他回答

我是这样使用的:

(lemons) ? alert("please give me a lemonade") : alert("then give me a beer");
**Old Method:**
if(x){
   add(x);
}
New Method:
x && add(x);

即使是赋值运算,我们也可以用圆括号

exp.includes('regexp_replace') && (exp = exp.replace(/,/g, '@&'));

这一行要干净得多。

if(dog) alert('bark bark');

我更喜欢这个。希望它能帮助到别人

可以用这个,

lemons ? alert("please give me a lemonade") : alert("then give me a beer");

解释:如果柠檬为真,那么alert(“请给我一杯柠檬水”),如果不为真,alert(“那给我一杯啤酒”)

它也可以在使用if块时使用单行完成:

if (blah)
    doThis();

它也适用于while循环。