作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我开始开发网络应用程序,但我来自 iOS 世界。我想知道在 JavaScript 中是否有与 Swift 的 guard
语句等效的语句?我喜欢早归模式。
对于那些可能不知道的人,guard
语句是一个“return early if 语句”,这是一个非常基本的例子:
myCondition = trueOrFalse()
guard myCondition
else {print("myCondition is false")
return}
print("myCondition is true")
最佳答案
在函数内部时,您可以提前返回。不需要实际的 guard
,您可以使用 if
代替。
f () {
myCondition = trueOrFalse()
// Make sure `myCondition` is `true`
if (!myCondition) return console.log("myCondition is false");
console.log("myCondition is true")
}
PS:我返回
日志语句只是为了让它保持在一行上。 console.log
仅返回 undefined
,因此您的函数将返回 undefined
。如果您认为这样看起来更好,或者希望您的 function
返回类型始终与可能有助于优化的类型相同,则可以将该语句拆分为多行(例如:始终返回一个整数,所以改为undefined
你可以返回 0
)。
关于javascript - 在 JavaScript 中是否有等同于 Swift 的 guard 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43539608/
判断这2个相似的Uris实际上相同的标准方法是什么? var a = new Uri("http://sample.com/sample/"); var b = new Uri("http://sam
这个问题在这里已经有了答案: Why does "true" == true show false in JavaScript? (5 个答案) 关闭 5 年前。 可能我很困惑,但我无法理解这个愚蠢
我是一名优秀的程序员,十分优秀!