Reputation: 137
I am currently working on a stripped down sandbox for people to write JavaScript in. I do not want users to have features like Reflect.defineProperty
, eval
or WebAssembly.Module
.
Currently the way I go about this is by going over this, and disabling the objects manually. i.e.
globalThis = {};
eval = () => {};
etc..
I want to disable all default JavaScript features and manually re-enable/add them back when I need them. How do I go about this?
Upvotes: 1
Views: 65
Reputation: 19493
I didn't know you can override default functions like this. Nice.
var original = alert;
alert = function (str) {
console.log(str)
}
alert(13)
// afterwards
alert = original;
alert(12)
Upvotes: 1