zoukankan      html  css  js  c++  java
  • javascript基础知识-语句

    关于javascript语句,有下面一些有趣的用法。

    1.空语句的使用:

    空语句只包含一个";",那在什么时候可以使用呢?

    例:

    //初始化一个数组a
    for(i = 0;i < a.length;a[i++] = 0);

    在这个用于初始化的for循环中,不需要任何循环体,但是javascript需要循环体中至少包含一条语句,所以这里利用空语句保证语法正确。

    (注意:循环体后面的语句块不一定需要花括号)

    2.声明语句的注意点

    1)关于var

    var声明的全局变量和函数声明的变量无法利用delete来删除

    2)关于function

    function语句里的花括号是必须的。

    函数声明不能放在if语句,while语句,或其他任何语句中

    函数声明也会被显示地提前到脚本或函数的顶部,和var声明的提前不同,整个函数体同样也被提前了。也就是说,可以在声明一个函数之前调用它。

    3条件语句

    1)关于if

    Javascript中if,else的匹配规则是,else总是和就近的if语句匹配。

    例:

    i=j=1;
    k=2;
    if(i==j)
      if(j==k)
        console.log("i equals k");
    else
      console.log("i doesn't equal j"); //这里的缩进会给你错误的暗示!

    上面这段代码其实会被解析为:

    if(i==j){
      if(j==k)
        console.log("i equals k");
      else
        console.log("i doesn't equal j");    
    }    

    所以务必使用花括号

    2)switch语句

    switch语句中case 子句的内容和表达式的匹配方式是"==="恒等

    子句case语句后必须要跟break或者return,否则余下的case语句也会被判断执行

    default标签其实可以放在switch语句的任何地方

    4.循环

    1)for循环还可以用来便利链表数据结构

    function tail(o){
        for(;o.next;o = o.next) /* empty */;
        return o;
    }

    2)for/in

    可以利用下面的代码把所有对象属性赋值到一个数组

    var o = {x:1,y:2,z:3};
    var a = [],i = 0;
    for(a[i++] in o) /* empty */;

    5.标签语句

    通过给一个语句加标签,就可以给这个语句起一个名字,这样在程序的任何地方都可以使用这个名字来引用它,可以标记任何语句,

    但是被标记的语句通常是那些循环语句,即while、do/while、for和for/in语句,通常给循环命名,就可以使用break语句和continue语句来

    退出循环或者循环的某一次迭代。

    如:

    <script type="text/javascript">
      outerloop:
       for (var i = 0; i < 10; i++)
       {
         innerloop: 
         for (var j = 0; j < 10; j++)
          {
            if (j > 3)
            {
              break;
            }
            if (i == 2)
            {
              break innerloop;
            }
            if (i == 4)
            {
              break outerloop;
            }
            document.write("i=" + i + " j=" + j + "<br>"); 
          }
       }
    </script>
  • 相关阅读:
    awk实例
    imagemagick imagick
    sort 命令
    cut 命令
    tr命令
    uniq
    多线程编程之Linux环境下的多线程(一)
    多线程编程之Windows同步方式
    多线程编程之数据访问互斥
    多线程编程之基础概念
  • 原文地址:https://www.cnblogs.com/zjtTT/p/5005771.html
Copyright © 2011-2022 走看看