with() {}
不要使用
使用 with 让你的代码在语义上变得不清晰. 因为 with 的对象, 可能会与局部变量产生冲突, 从而改变你程序原本的用义.
with
下面的代码是干嘛的?
with (foo) { var x = 3; return x; }
答案: 任何事. 局部变量 x 可能被 foo 的属性覆盖, 当它定义一个 setter 时, 在赋值 3 后会执行很多其他代码.
x
foo
3
所以不要使用 with 语句.