JS: thisBinding in setTimeout and setInterval

By Xah Lee. Date: .

thisBinding in setTimeout and setInterval

// 2026-05-04
// calling object.method() does not get thisbinding correctly
// when in setTimeout(object.method(), delay)
// why?

const xobj = {
 f_print_thisbinding() {
  console.log(this);
 },
};

setTimeout(xobj.f_print_thisbinding, 1000);
// Window {}

jisus, ai robbed my job.

ai js thisbinding setTimeout 2026-05-04 1701e
ai js thisbinding setTimeout 2026-05-04 1701e

JavaScript really sucks.