with(location)
{
var url=href+"aaa";
}
alert(url);
为什么外部可以访问url,不是执行到with语句创建临时作用域(变量对象)然后执行完毕对象销毁,那么这个变量对象被销毁了,为什么还可以方位ul??请各位大虾能推荐一下关于这方面的文章!谢谢
2 回答
慕的地8271018
TA贡献1796条经验 获得超4个赞
with不是function,它不会引入新的变量作用域,所以这里的url外面会访问到。
JavaScript没有块级作用域,只有函数级作用域,所以像下面这样的代码也是可以的:
if (true) { var a = 5; } alert(a); // 5
跟你的代码的道理是一样的
添加回答
举报
0/150
提交
取消