Этот код работает с предупреждениями "ok" во всех браузерах, кроме Chrome:
eval("var outer = 0; function test() {'use strict'; outer = 1; } test(); alert('ok');");
(Попробуйте на jsfiddle).
Все, что я делаю, ссылается на внешнюю переменную из функции 'use strict'
, все в контексте eval
. Chrome говорит
Uncaught ReferenceError: outer is not defined
Примечание. Первоначально я столкнулся с этим при использовании devtool: 'eval'
в Webpack.