Предположим, что мы имеем:
function Super() {
// init code
}
function Sub() {
Super.call(this);
// other init code
}
Sub.prototype = new Super();
var sub = new Sub();
Затем в какой-то другой части нашего ocde мы можем использовать одно из следующих условий для проверки отношения:
sub instanceof Super;
или
Super.prototype.isPrototypeOf( sub )
В любом случае нам нужно иметь как объект (sub), так и родительский конструктор (Super). Итак, есть ли какая-то причина, по которой вы бы использовали один против другого? Есть ли какая-то другая ситуация, где различие более ясно?
Я уже внимательно прочитал 2464426, но не нашел достаточно конкретного ответа.