July 3, 2023

Viiisit [Ruby] - Constant & Variable!

#ruby

命名方式:
常見的命名方式有 snake_case 跟 camelCase 這兩者。
在 Ruby 大部分是使用小寫英文字母以及底線來組合變數名稱,
例如像是 my_new_post,蛇式命名(snake_case)。


Constant 常數

Variable 變數

Types Example Default Remark
Local Variable 區域變數 name none 非大寫字母開頭
Global Variable 全域變數 $name nil 有 $ 符號
Instance Variable 實體變數 @name nil 有 1 個 @ 符號
Class Variable 類別變數 @@name none 有 2 個 @ 符號
Pseudo Variable 虛擬變數 nil, self, true, false - -

Available Scope 有效範圍

以區域變數為例子:

1. 將變數定義在 say_hello 方法裡:

1
2
3
4
5
6
def say_hello
name = "Viii"
puts "Hi, This is #{name}!"
end
say_hello # Hi, This is Viii!
puts name # undefined local variable or method `name' for main:Object (NameError)
line 6: 定義在 say_hello 方法裡的 name 變數,在離開 say_hello 方法就失效。

2. 將變數定義在外層:

1
2
3
4
5
6
name = "Viii"
def say_hello
puts "Hi, This is #{name}!" # undefined local variable or method `name' for main:Object (NameError)
end
puts name # Viii
say_hello
line 3: 定義在外層的變數 name,在 say_hello 方法裡找不到而失效。

參考資料:
變數、常數、流程控制、迴圈