Yukimarupie / puffshare

puffshare
0 stars 1 forks source link

5/14-15はとりあえずRubyとRailsの基礎に立ち返ることにした #22

Open Yukimarupie opened 3 years ago

Yukimarupie commented 3 years ago

チェリー本と、Perfect Railsをやろうと思う

Yukimarupie commented 3 years ago

Rubyのメソッド(関数)すらも若干忘れていたので復習で人に教える程でまとめてみようと思う

以下2サイトが個人的に分かりやすかった

https://uxmilk.jp/22320https://qiita.com/ryosuketter/items/4cea4185f1cf7112f95b

引数なしのメソッド呼び出し

def hello puts "Hello world" end

hello #=> Hello world

引数ありのメソッド呼び出し

公式

def メソッドの名前(引数1、引数2…)
  処理
end

前項のメソッドを引数付きで書き直すと、次のようになります。

def hello(name, age)
  puts "私の名前は #{name}!  #{age} 歳です"
end

hello("Yuki", 24)
#=> 私の名前は Yuki!  24歳です

ただ、これだと、必ず引数を指定しなければエラーが返ってくるようになってしまう。

hello
#=> エラーが出る

デフォルト値を設定しておくと、引数なしでもエラーにならずに済みます。

def sayHello(name="デフォルト名", age=100)
 puts "こんにちは、 #{name}!  #{age} 歳です"
end

また、引数は=ではなく、シンボルでも書くことができる。

def sayHello(name:, age:)
 puts "こんにちは、 #{name}!  #{age} 歳です"
end

そのままデフォルト値は同じように設定が可能

def sayHello(name: "Kaneko", age: 20)
 puts "こんにちは、 #{name}!  #{age} 歳です"
end

sayHello
#=> こんにちは、Kaneko! 20歳です

sayHello(name: "Sana", age: 19)
#=> こんにちは、Sana! 19歳です