Показать сообщение отдельно
  #2 (permalink)  
Старый 29.08.2018, 02:19
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,495

Если утрировать instanceof просто проходит по цепочке прототипов левого аргумента и проверяет на строгое равенство(===) с прототипом правого аргумента.
И это логично в рамках объектного наследования: c создан классом C - наследником от класса A, класс C связан с классом A цепочкой прототипов, потому c instanceof A === true, a же создан классом A - родителем по отношению C, класс A ничего не знает о классе C, он никак с ним не связан, и естественно a instanceof C === false.

А на "доп. вопрос" ответ: хром не угадал. Можешь запостить им баг.)
__________________
29375, 35

Последний раз редактировалось Aetae, 29.08.2018 в 02:30.
Ответить с цитированием