change behaviour for overriding non-writable property on proto will make peril for real world:
'use strict';
const obj = { __proto__: Object.freeze({ __proto__: null, a: null }) };
module.exports = (x) => {
obj[x] = null;// assert x is not "a" but now it missed
// continue to do danger things with x
};
but as a native feature, ses can stipulate the prototypes behaviour like proxy in pseudo-code below:
change behaviour for overriding non-writable property on proto will make peril for real world:
but as a native feature, ses can stipulate the prototypes behaviour like proxy in pseudo-code below:
it's still writable when read property descriptor, but can't modify actually.
then ses can prevent modify prototypes without changing override mechanism.
other hack precedent in js spec: