Answer

Answer

t.me/js_test

Ответ:

20 и NaN

Объяснение:

Обратите внимание, что diameter это обычная функция, в то время как perimeter это стрелочная функция.

У стрелочных функций значение this указывает на окружающую область видимости, в отличие от обычных функций! Это значит, что при вызове perimeter значение this у этой функции указывает не на объект shape, а на внешнюю область видимости (например, window).

У этого объекта нет ключа radius, поэтому возвращается undefined.

Код для проверки:

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

shape.diameter();
shape.perimeter();

Report Page