Sobes.tech
Back to tasks
Junior — Senior
33

Неправильное значение this при вызове функций и стрелочных методов

Get help with live coding in real time with Sobes Copilot
Task condition

Вопрос: какие значения вернут следующие обращения?

function diameter() {
  return this.radius * 2;
}

const shape = {
  radius: 10,
  diameter,
  perimeter: () => 2 * Math.PI * this.radius,
};

const foo = shape.diameter;
foo();              // ?
shape.diameter();   // ?
shape.perimeter();  // ?

Определите результат каждого вызова, учитывая особенности привязки контекста в обычных функциях и стрелочных функциях.