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可读性更好一些