IE8 querySelector null vs normal null

Ich habe gerade wirklich interessantes Verhalten in ie8 gefunden. Es stellt sich heraus, dass null nicht immer null ist.

// just normal, casual null hanging out in the sun
var nullA = null;
// query for non existing element, should get null, same behaviour also for getElementById
var nullB = document.querySelector('asdfasfdf');

// they are equal
console.log(nullA === nullB);

// false
nullA instanceof Object;

// will throw 'Object expected' error in ie8. Black magic
nullB instanceof Object;

Hat jemand eine Erklärung dafür?