美文网首页
ECMAScript语句

ECMAScript语句

作者: kissLife | 来源:发表于2016-05-07 16:32 被阅读21次

    标签语句

    break语句和continue语句都可以与有标签的语句联合使用,并且标签要在break,continue语句之前声明,返回代码中的特定位置。
    通常,当循环内部还有循环时,会这样做,例如:

    var iNum = 0;
    
    outermost:      // 标签声明
    for (var i=0; i<10; i++) {
      for (var j=0; j<10; j++) {
        if (i == 5 && j == 5) {
            break outermost;
        }
        iNum++;
      }
    }
    
    alert(iNum);    // 输出 "55"
    

    这里的break语句有一个参数,即停止循环后要跳转到的语句的标签。这样break语句不止能跳出内部for语句(即使用变量j的语句),还能跳出外部for语句(即使用变量 i 的语句)。因此,iNum最后的值是55,因为当i和j的值都等于5时,循环将终止。

    可以以相同的方式使用 continue 语句:

    var iNum = 0;
    
    outermost:      // 标签声明
    for (var i=0; i<10; i++) {
      for (var j=0; j<10; j++) {
        if (i == 5 && j == 5) {
            continue outermost;
        }
        iNum++;
      }
    }
    
    alert(iNum);    // 输出 "95"
    

    continue语句会迫使循环继续,不止是内部循环,外部循环也如此。当j等于5时出现这种情况,意味着内部循环将减少5次迭代,致使iNum的值为95。
    <br />

    with语句

    with 语句用于设置代码在特定对象中的作用域,在作用域内不再需要显式写出对象。

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

    在这个例子中,with语句用于字符串,所以在调用toUpperCase()方法时,解释程序将检查该方法是否是本地函数。如果不是,它将检查伪对象sMessage,看它是否为该对象的方法。
    提示:with 语句是运行缓慢的代码块,尤其是在已设置了属性值时。大多数情况下,如果可能,最好避免使用它。
    <br />

    更多请参考:W3School

    相关文章

      网友评论

          本文标题:ECMAScript语句

          本文链接:https://www.haomeiwen.com/subject/atfsrttx.html