t.me/atinfo_chat Telegram группа по автоматизации тестирования

JavaScript new keyword specifics and tricks

Теги: #<Tag:0x00007f748a5fa630> #<Tag:0x00007f748a5fa518> #<Tag:0x00007f748a5fa428> #<Tag:0x00007f748a5fa310> #<Tag:0x00007f748a5fa1d0>

Просто несколько трюков на JavaScript, которые становятся понятными если разобраться, как работает прототипная модель JS. Может пригодится для собеседований :wink:

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
1 Симпатия