# ECMAScript with 语句

## 有标签的语句

with 语句用于设置代码在特定对象中的作用域。

它的语法：

    with (expression) statement

例如：

    var sMessage = "hello";
    with(sMessage) {
      alert(toUpperCase());	//输出 "HELLO"
    }

在这个例子中，with 语句用于字符串，所以在调用 toUpperCase() 方法时，解释程序将检查该方法是否是本地函数。如果不是，它将检查伪对象 sMessage，看它是否为该对象的方法。然后，alert 输出 "HELLO"，因为解释程序找到了字符串 "hello" 的 toUpperCase() 方法。

提示：with 语句是运行缓慢的代码块，尤其是在已设置了属性值时。大多数情况下，如果可能，最好避免使用它。