<script>
function test() {
var i = 1;
var func = new Function(document.write(i));
func();
}
test();
</script>这是闭包吧,func可以访问它上层函数的变量。
格式问题,Function里面是字符串,要把var func = new Function(document.write(i));改为var func = new Function("document.write(i)");就能出来同样的结果;你这种写法应该相当于调用了window.document的方法,所以才能拿到i