Почему не работает проксирование?

Недавно начал изучать проксирование в javascript и не могу понять почему данный код работает

let array = [];

array = new Proxy(array, {
  set(target, prop, value) {
    if (typeof value === "number") {
      target[prop] = value;
      return true;
    } else {
      return false;
    }
  }
});

array.push(1);

А этот нет

let array = [];

array = new Proxy(array, {
  set(target, prop, value) {
    if (typeof value === "string") {
      target[prop] = value;
      return true;
    } else {
      return false;
    }
  }
});

array.push("123dsfsdf");

выдет ошибку TypeError: 'set' on proxy: trap returned falsish for property 'length'

В чем проблема?


Ответы (0 шт):