en.javascript.info/1-js/99-js-misc/01-proxy/01-error-nonexisting/task.md
2019-07-16 19:23:04 +03:00

652 B

Error on reading non-existant property

Usually, an attempt to read a non-existant property returns undefined.

Create a proxy that throws an error for an attempt to read of a non-existant property instead.

That can help to detect programming mistakes early.

Write a function wrap(target) that takes an object target and return a proxy that adds this functionality aspect.

That's how it should work:

let user = {
  name: "John"
};

function wrap(target) {
  return new Proxy(target, {
*!*
      /* your code */
*/!*
  });
}

user = wrap(user);

alert(user.name); // John
*!*
alert(user.age); // Error: Property doesn't exist
*/!*