javascript - if语句的简写

标签 javascript optimization shorthand

我为什么要问

我在理解 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/

相关文章:

JavaScript/jQuery改变img图片

c - 循环展开,性能实验室

mysql - 如何使用简写在 mysql 查询中调用字段

javascript - 根据数组搜索表格单元格文本

javascript - 在backbone.js中,当我通过传递 { validate : true } can force validate? 使用 unset() 时

javascript - 使用经纬度代码脚本生成google map

c++ - 防止 Visual Studio C++ 合并相同的函数

php - mysql 查询 - 将数字放在引号中会导致性能损失吗?

javascript - 在 JavaScript 中编写此代码的最短方法

javascript - if/else if/else如何简写?