1.简介
guard
是Swift中的一个关键字,类似于if
语句,都是进行条件判断,然后执行其后代码块中的语句。
但与if
语句不同的是,guard-else
只会有一个代码块,不像if
语句可以if-else
多个代码块。
2.作用
guard-else
的语义是除非...那么
。
guard
语句判断其后的表达式值为false
时,才会执行之后代码块里的代码,如果为true
,则跳过整个guard
语句。
3.使用
//MARK: 判断用户权限
func checkPermission(user:[String:String]) {
guard user["phone"] != nil else {
print("用户未绑定手机号");
return;
}
guard user["idCard"] != nil else {
print("用户未绑定身份证");
return;
}
print("用户绑定了手机号和身份证");
}
4.总结
guard-else
语句不能代替if-else
语句,如果是如果...否则
,还是选择if
比较合适,如果是除非...那么
,使用guard-else
可读性更好一些