【发布时间】:2015-08-12 14:27:54
【问题描述】:
考虑这段代码:
<script>var foo = 'bar';</script>
<div id='isolated'>
<script>console.log(foo)</script>
</div>
这会将'bar' 返回到控制台。但是,我希望 foo 和在 #isolated 之外声明的任何其他变量在其中声明为 undefined。
如何做到这一点?一个跨浏览器、轻量级和原生的解决方案将是更可取的。
【问题讨论】:
-
也许看看github.com/asvd/jailed 或github.com/google/caja。谷歌“在浏览器 js 沙箱中”。
-
不要像这样混合你的 JS 和 html 代码。将它们分开。
标签: javascript namespaces isolation