Explain this and its context in JavaScript.

this refers to the calling object but is lexically bound in arrow functions.

const obj = {
  name: "Alice",
  sayName() { console.log(this.name); }
};
obj.sayName(); // "Alice"