我为什么要问
我在理解 JavaScript 中 if
语句的简写方面遇到了很多麻烦,而且我还没有找到对其进行很好描述的文章或教程。这就是为什么我坚持优化我的小代码。我是 JavaScript 的新手,所以如果有人能让我对这段代码的缩写有基本的了解,我将非常感谢你告诉我代码背后的魔法。
我需要什么帮助
我将在很多函数中使用完全相同的代码。因此,我想对其进行优化,使其成为更短的代码版本。
function welcomemessage() {
if (br == 1) {
hello();
}
else {
hey();
}
}
最佳答案
使用三元运算符。
function welcomemessage() {
(br == 1) ? hello() : hey();
}
三元运算符很有用,而且不难理解。这是它的工作原理。
(condition) ? (true) : (false)
编辑:
由于 JS 将函数视为一流对象,因此可以创建包装器。像下面这样的东西(虽然没有测试)
function ternaryWrapper(br, functionTrue, functionFalse){
return (br == 1) ? functionTrue : functionFalse;
}
//call it
ternaryWrapper(2,hello, hey);
关于javascript - if语句的简写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10941050/