Error on reading non-existent property
Usually, an attempt to read a non-existent property returns undefined.
Create a proxy that throws an error for an attempt to read of a non-existent property instead.
ÙØ°Ø§ ÙØ³Ø§Ø¹Ø¯ عÙÙ Ø§Ø³ØªÙØ´Ø§Ù Ø§ÙØ£Ø®Ø·Ø§Ø¡ Ø§ÙØ¨Ø±Ù Ø¬ÙØ© بشÙ٠أسرع.
ÙÙ
Ø¨Ø¥ÙØ´Ø§Ø¡ Ø¯Ø§ÙØ© wrap(target) ÙØ§ÙØªÙ ØªØ³ØªÙØ¨Ù ÙØ§Ø¦Ù target ÙØªÙÙÙ
بإرجاع برÙÙØ³Ù ÙØ¶ÙÙ ÙØ°Ù اÙÙØ¸ÙÙØ©.
ÙØ°Ø§ ÙÙÙÙØ© ÙØ¹ÙÙ:
let user = {
name: "John"
};
function wrap(target) {
return new Proxy(target, {
/* your code */
});
}
user = wrap(user);
alert(user.name); // John
alert(user.age); // ReferenceError: Property doesn't exist: "age"
let user = {
name: "John"
};
function wrap(target) {
return new Proxy(target, {
get(target, prop, receiver) {
if (prop in target) {
return Reflect.get(target, prop, receiver);
} else {
throw new ReferenceError(`Property doesn't exist: "${prop}"`)
}
}
});
}
user = wrap(user);
alert(user.name); // John
alert(user.age); // ReferenceError: Property doesn't exist: "age"