Оператор in

Оператор in проверят есть ли свойство у объекта и возвращает true либо false.

Синтаксис

'свойство' in объект

Пример

Посмотрим как работает оператор in:

let obj = { name: 'вася', age: 23, } console.log('name' in obj) // true console.log('age' in obj) // true console.log('test' in obj) // false

Пример

Часто вместо in проверяют, что свойство в логическом контекст - true:

let obj = { name: 'Андрей', height: '127', } if ('name' in obj) {} // проверка в условии с in if (obj.name) {} // но чаще пишут так

Оба варианта можно использовать. Но всегда стоит помнить, что пустая строка, 0, null, NaN и undefined в логическом контексте - falsе. Следовательно, если свойство может иметь подобное значение - стоит использовать in.