Middle
Ruby'da '===' operatori nima?
sobes.tech AI
AIdan javob
Ruby'da === (uchta teng) operatori case equality operator deb nomlanadi.
U case/when ifodalarida ishlatiladi va sinflar tomonidan belgilangan bo'lib, chap operand tomonidan ifodalangan "kategoriya" yoki "oraliq" ga tegishli yoki yo'qligini tekshirish uchun ishlatiladi.
=== operatorining xulqi chap operandning sinfiga bog'liq.
Misollar:
Modulesinfi: O'ng operand modul/klassning nusxasi yoki uning vorisi ekanligini tekshiradi.# O'ng operand String ning nusxasi yoki uning vorisi ekanligini tekshiradi. String === "hello" # => trueRangesinfi: O'ng operand oraliqda ekanligini tekshiradi.# 5 ning 1..10 oraliqda ekanligini tekshiradi. (1..10) === 5 # => trueRegexpsinfi: Matnning regex bilan mos kelishini tekshiradi.# "/ruby/" matnining /ruby/ regex bilan mos kelishini tekshiradi. /ruby/ === "/ruby/" # => trueProcsinfi: Blokni o'ng operand bilan chaqiradi.# Blokni 5 argument bilan chaqiradi. ->(x) { x > 3 } === 5 # => trueSymbolsinfi: Belgiyni boshqa matn yoki belgi bilan solishtiradi.# :test belgisini "test" matni bilan solishtiradi. :test === "test" # => true
Ko'pchilik boshqa sinflarda === == kabi xulqda bo'ladi.
case/whenda qo'llanilishi:
case condition ifodasi har bir when qiymatiga === chaqiruvlarining ketma-ketligiga teng bo'lib, condition o'ng operand sifatida ishlatiladi.
# String === value ga teng
# Keyin Integer === value
case value
when String
# ...
when Integer
# ...
end