Sigizmund2012, почти. Это проверка на существования свойства в объекте/массиве.
var obj = {foo: 'bar'};
alert('foo' in obj); //true, так как свойство 'foo' есть у объекта
alert('bla' in obj); //false, потому что нет такого свойства у объекта.
Ты можешь писать условия так:
if(obj.foo) {
...
}
else {
...
}
Но этот способ возвращает нам сразу всё значение obj.foo и потом уже преобразуется в булево. А вот способ ниже сразу возвращает true/false, а значит и работает быстрее, и более правилен.
if('foo' in obj) {
...
}
else {
...
}
И на заметку:
https://msdn.microsoft.com/ru-ru/lib...(v=vs.94).aspx