kinalog

自称フロントエンドエンジニアが何か喚いています。

Rubyの基本のキ

Rubyはなかなか今まで触ったこと無い形のものがあったりするのでメモ。

条件分岐

if文

if 条件 then
    処理
end


ちなみに、 「then」は略せる。
省略できるのなら「then」の存在意義とは・・・?と思って調べてみた。

上記ページによると

if文では条件式の後に改行がある場合は「then」を省略することが可能

とのこと。

unless文

unless 条件 then 
    処理
end

if文の逆。条件がfalseのときに処理が実行される。


繰り返し

while文

while 条件 do
    処理
end

これも「do」は略せる。

timesメソッド

(繰り返したい回数).times do
    処理
end

(繰り返したい回数).times do |i|
とか書くと繰り返しの回数を取得できる。

for文

基本的なfor文
for 変数 in オブジェクト do
    処理
end

上記はeachメソッドシンタックスシュガー。

範囲オブジェクトを使ったfor文
for 変数 in 開始の数..終了の数 do
    処理
end

0..10 みたいな感じのものが範囲オブジェクト、らしい。

配列の繰り返し

eachメソッドで。

array.each do |変数|
    処理
end

jQueryのeachメソッドに似てる。

ハッシュの繰り返し

hush.each do |キーの変数, 値の変数|
    処理
end

これもeachメソッドでいける。


メソッド定義

def 名前
    処理
end

Rubyオブジェクト指向な言語なので、
多分「関数」ってものはなくって、全部「メソッド」。

Ruby界の暗黙の了解

● 真偽値を返すメソッドの名前は、ひと目で分かるように末尾に「?」をつけるのがルール

● 「do 〜 end」と「{}」のつかいわけ
do 〜 end → 複数行になる場合
{} → 1行にまとめる場合