クロージャーの原理が分らないため、質問させて頂きました。
Auth.auth().createUser(withEmail: emailTextField.text!, password: passwordTextField.text!) { (user, error) in if error != nil{ print(error as Any) }else{ print("ユーザーの作成が成功しました") } }
分らない原因なのですが、関数は、「引数が入ってから実行される」ものであると理解しています。しかし、上記のAuth.auth().createUser
関数はまず、関数の中身が実行されてから、その値が、user
そして、error
に入るといったものです。
createUser
関数の形はTrailing Closureといったクロージャーであることは理解しているのですが、Trailing Closureは引数の最後の部分を、()
の外に出すことでコードの可読性をあげる記述方法であるかと思います。しかし、これは引数の最後の部分を外に出しているだけであり、関数の結果を代入する為の変数ではないと思います。
何故、user, error
にcreateUser
関数の結果が入るのかが分かりません。
どなたか、教えて頂けましたら幸いです。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/17 00:39 編集
2019/12/17 02:18
2019/12/17 02:54
2019/12/17 06:04
2019/12/17 06:28