只是想知道类似于 JavaScript 中的 indexOf 的 Array 对象是否有相同的方法?
例如:
arr = %w{'a', 'b', 'c'} c = 'c' 如果 (arr.indexOf(c) != -1) // 做一些事情 别的 // 不要做一些事情
只是想知道类似于 JavaScript 中的 indexOf 的 Array 对象是否有相同的方法?
例如:
arr = %w{'a', 'b', 'c'} c = 'c' 如果 (arr.indexOf(c) != -1) // 做一些事情 别的 // 不要做一些事情
这是.index
Array的方法。
http://www.ruby-doc.org/core-1.9.3/Array.html#method-i-index
在 ruby 中,只有false
andnil
被认为是错误值,所以你可以这样做:
arr = %w{a, b, c}
c = 'c'
if arr.index c
# do something
else
# do something else
end
如果要检查数组中是否存在元素,可以使用include?
:
if arr.include?(c)
# do stuff
else
# don’t
end
为此使用 Array#index:
c = 'c'
%w{a b c}.index(c)
if arr.last == c
# do some stuff
else
# don't do some stuff
end