当Proxy
捕获一个分配并且不确认它时,在严格模式的情况下TypeError
被抛出。但我会滥用代理并需要一个ReferenceError
。
我怎样才能ReferenceError
接听第二个电话?
var code = `
try {
a = 1;
console.log("Ok");
} catch (e) {
console.log(e.name);
}
`;
var p = new Proxy({a:undefined}, {set(){}});
with (p) (function () { eval(code); })(); // Ok
with (p) (function () { 'use strict'; eval(code); })(); // TypeError
(function () { 'use strict'; eval(code); })(); // ReferenceError
PS:同样的问题在俄语中。