Facebook Pixel

How do you approach this questions in a JavaScript interview?

Identify the call type (plain, method, call/apply/bind, new, or arrow), apply the precedence rules, account for strict mode (plain calls give undefined), and remember that arrows use lexical this regardless of call type.

Verify This Answer

Cross-check this information using these trusted sources:

More FAQs in Common this Keyword Interview Questions in JavaScript

In non-strict mode, this is the global object (window). In strict mode, this is undefined. This is default binding, the lowest precedence rule.

this is lost. Calling const fn = obj.method; fn() is a plain call, so this is the global object or undefined, not obj. Fix with .bind(obj) or an arrow wrapper.

An arrow inside a constructor inherits this from the constructor's scope, where this is the new instance. This is why arrows fix the setTimeout-in-constructor bug.

Still have questions?

Browse all our FAQs or reach out to our support team

Want to upskill yourself?

Our courses are taking a Coffee break, but your curiosity shouldn't. Stay engaged with namastedev linkedin, youtube, discord and other resources while you wait.

0
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.
Please Login.