我一直在尝试实施一个后卫语句,并且我认为我的实现正确,除非我的代码在零零值时也超过了警告语句。我基本上将字段保持为空并按下寄存器按钮以运行此代码,但是它为电子邮件和密码分配了空值,并且代码直接经过“Else”块。一些帮助将不胜感激。guardletemail=emailField.text,letpassword=passwordField.text,letname=nameField.textelse{print("FYF:Formisnotvalid")return}Auth.auth().createUser(withEmail:email,password:password,compl
有什么方法可以使用or或者and功能守卫条款中的表达式:defmoduleTestdodeftestfn(arg1,arg2)whenis_nil(arg1)||is_nil(arg2),do::nothingdeftestfn2(arg1,arg2)whenis_nil(arg1)&&is_nil(arg2),do::nothingend看答案后卫表情不支持&&和||(接受LHS上的任何价值),但仅and和or(它仅接受LHS上的布尔人)。自从is_nil始终返回布尔值,您可以切换到使用and和or:defmoduleTestdodeftestfn(arg1,arg2)whenis_nil(