Ο τελεστής 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 = ['green', 'red', 'blue', 'pink']

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.