2016-10-20 6 views
-4
次のように私は、コードの一部を読んでいます

Rubyの次のコードについて

u = account.generate_user 
    { 
     id: u.id, 
     name: u.name 
    } 

あなたは私が上記のスニペットはいないものを知って聞かせてもらえますか?それは次のことをしますか?

u = account.generate_user 
account.id = u.id 
account.name = u.name 

この用途への参照はありますか?

+0

ハッシュがメソッドの戻り値であると思います –

+0

インデントはかなり誤解を招くことがあります。ハッシュは引数のように見えます。 – Stefan

+0

また、それは 'generate_user'の引数であると最初に考えました –

答えて

1

最初にオブジェクト(u)を生成し、ハッシュを返します。その値はそのオブジェクトのメソッド呼び出しです。

以下の操作はありますか?

u = account.generate_user account.id = u.id account.name = u.name

いいえ。ハッシュでは、accountの属性/メソッド(idname)にアクセスするのではなく、新しく作成されたオブジェクトuにアクセスしています。

uaccount.generate_userの戻り値に依存します。

関連する問題