ოპერატორი in

ოპერატორი in ამოწმებს აქვს თუ არა ობიექტს ან მასივს კონკრეტული თვისება და აბრუნებს true-ს ან false-ს.

სინტაქსი

javascript'თვისება' in ობიექტი;

მაგალითი

ვნახოთ, როგორ მუშაობს ოპერატორი in:

javascriptlet obj = {
  name: 'Nick',
  age:  23,
};

console.log('name' in obj); // true
console.log('age'  in obj); // true
console.log('test' in obj); // false

მაგალითი

ვნახოთ, როგორ შეიძლება გამოვიყენოთ ოპერატორი in თვისების შესამოწმებლად მასივში:

javascriptlet arr = ['მწვანე', 'წითელი', 'ლურჯი', 'ვარდისფერი']

console.log(0 in arr); // true, არის ელემენტი ამ ინდექსზე
console.log(4 in arr); // false, არ არის ელემენტი ამ ინდექსზე 
console.log('four' in arr); // false, საჭიროა ინდექსი, და არა ელემენტის მნიშვნელობა
console.log('length' in arr); // true, მასივს აქვს ასეთი თვისება 

მაგალითი

ხშირად in-ის ნაცვლად ამოწმებენ, არის თუ არა თვისება ლოგიკურ კონტექსტში - true:

javascriptlet obj = {
  name: 'John',
  height: '177',
};

if ('name' in obj) {} // შემოწმება პირობაში in-ით
if (obj.name) {} // მაგრამ უფრო ხშირად ასე წერენ

ორივე ვარიანტის გამოყენება შეიძლება. მაგრამ ყოველთვის უნდა გვახსოვდეს, რომ ცარიელი სტრიქონი, 0, null, NaN და undefined ლოგიკურ კონტექსტში არის false. შესაბამისად, თუ თვისებას შეიძლება ჰქონდეს მსგავსი მნიშვნელობა - უნდა გამოვიყენოთ in.