Просто несколько трюков на JavaScript
, которые становятся понятными если разобраться, как работает прототипная модель JS
. Может пригодится для собеседований
var A = function () {};
var f = function () {
return A;
};
var a = f();
a === A;
// true
var a = new f();
a === A;
// true
var a = new f;
a === A;
// true
var a = new new f();
a instanceof A;
// true
var a = new (f());
a instanceof A
// true
var a = new f()();
a === undefined;
// true
var a = new (f())();
a instanceof A;
// true