在Ruby中,未定义的变量会抛出一个NameError
异常,而不是返回nil
。如果你想确保一个变量始终有一个值,可以使用||=
操作符,这样如果变量未定义,它将被赋值为nil
。
例如:
# 未定义的变量a会抛出NameError异常
puts a
# 输出:NameError: undefined local variable or method `a' for main:Object
# 使用 ||= 操作符确保变量a有一个值
a ||= "Hello, Ruby!"
puts a
# 输出:Hello, Ruby!
在这个例子中,我们使用||=
操作符将变量a
初始化为字符串"Hello, Ruby!"
。如果变量a
已经有一个值,||=
操作符不会改变它的值。如果变量a
未定义,它将被赋值为nil
。
领取专属 10元无门槛券
手把手带您无忧上云