Javascript自学-3

  • Javascript运算符
    • 要进行各种各样的运算,就要使用不同的运算符号。
    • 算术运算符:+、-、*、/、%、++、--
      • +:A = 10 + 20;
      • -:A = 10 - 20;
      • *:A = 10 * 20;
      • /:A = 10 / 20;
      • "%"取余运算符,两个数相除,取余数
        • A = 10 % 3;      // A  = 1,如果余数不为0,则两个不能整除。
        • A = 10 % 2;      // A  = 0,如果余数为0,则两个数能除尽。
                // 判断两个数是否能除尽
                  if (10%3 == 0)
                  {
                      document.write("10能被3整除");
                  }else {
                      document.write("10不能被3整除");
                  }
          显示效果:10不能被3整除
      • “++”加1运算符、也称为自加1
        • “++”可以做前缀(++i),也可以做后缀(i++)。
        • 如果不赋值的话,i++和++i的结果是一样的。
              <script type="text/javascript">
                  var a = 10;
                  // 做后缀,++在变量后
                  a++;    //展开 a = a + 1
                  // 做前缀,++在变量前
                  ++a;    //展开 a = 1 + a
                  window.alert(a);
              </script>
        • 如果要赋值的话,i++和++i的结果就不一样了。
              <script type="text/javascript">
                  var a = 10;
                  // 先赋值后加1
                  var b = a++;    //先将变量a的值赋给变量b,然后再将变量a+1
                                  // a = 11,b = 10
                  // 先加1后赋值
                  var c = ++a;    //先将变量a的值加1,然后再将变量a赋给变量c
                                  // a = 12,c = 12
                  // 输出变量b和c的结果
                  document.write("B:"+b+",C:"+c);
              </script>


      • “--”减1运算符、也成为自减1
        • “--”可以做前缀(--i),也可以做后缀(i--)。
        • 如果不赋值的话,i--和--i的结果是一样的。
        • 如果要赋值的话,i--和--i的结果就不一样了。
    • 赋值运算符:=、+=、*=、-=、/=
      • “+=”先加后等。如:a += 10;    //展开后 a = a + 10
      • “-=”先减后等。如:a -= 10;      //展开后 a = a - 10
      • "*="先乘后等。
      • "/="先除后灯。
    • 字符串运算符:+、+=
      • 字符串只能进行“连接”运算,不能进行其他运算。
        • var a ="abc";
        • var b = a + "def";    //结果 b = a + "def" = "abc" + "def" = "abcdef"
    • 比较运算符:>、<、>=、<=、==(相等于)、!=(不等于)、===(全等于)、!==(约等于)
      • 比较运算符的运算结果是布尔值(true或false)。
        • A = 10 > 20;      //结果A=false
        • A = 20 >= 20;   // 结果A=true
        • A = 10%2 ==0  // 结果 A = true
        • A = 10%2 =="0"  //结果A=true
        • A = 10%3 !=0;   //结果A= true
        • A = 10%2 ==="0" //结果A=false
      • "="是赋值号,如a = 10;
      • "=="等于。只比较两个变量的,而不管类型,只要一样,就返回true,否则返回false。
      • "==="全等于,既比较变量,也判断类型。如果类型和值都一样,返回true,否则返回false。
    • 逻辑运算符:&&、||、!
      • 逻辑运算符的运算结果有两个true或false。
      • “&&”逻辑与。如果左右两个操作数都为true,则结果为true;否则,结果为false。
        • 逻辑与,就是两个条件同时满足时,则结果为false。
        •     <script type="text/javascript">
                  // 判断一个人的年龄,是否符合当兵的要求
                  var age = 28;
                  if(age>=18 && age<=25)
                  {
                      document.write("符合当兵年龄要求")
                  }else{
                      document.write("哪凉快哪儿去")
                  }
              </script>
      • "||"逻辑或。左右两个条件,只要有一个满足,则返回true;否则,返回false。
            <script type="text/javascript">
                // 判断一个人的年龄,是否符合当兵的要求
                var age = 21;
                if(age<=18 || age>=25)
                {
                    document.write("符合当兵年龄要求")
                }else{
                    document.write("哪凉快哪儿去")
                }
            </script>
      • "!"取反运算
        • !true = false; 、!false = true; 、!100 = false;
  • window.prompt()
    • 功能:弹出一个输入框,让用户来输入内容。
    • 语法:var year = window.prompt(text[,defaultText]);
      • 参数:
        • Text:提示信息
        • defaultText:可选项,也就是可有可无。输入框中的默认内容。
      • 返回值
        • 如果单击"确定"按钮,返回一个字符串的数据。
        • 如果单击"取消"按钮,返回一个null。
              <script type="text/javascript">
                  // 判断用户输入的年份是否是闰年
                  var year = window.prompt("请输入一个年份");
                  // 判断用户是否取消操作
                  if(year==null)
                  {
                      document.write("<h1 style='margin:0 auto;'>傻逼,你已经取消操作</h1>");
                  }else
                  {
                      /*闰年的条件:
                        (1)能被4整除且不能被100整除
                        (2)能被400整除。
                        (3)条件(1)和条件(2)是或的关系*/
                      if(year%4 ==0 && year%100 !=0 || year%400 ==0)
                      {
                          document.write(year+"是闰年");
                      }else
                      {
                          document.write(year+"不是闰年");
                      }
                  }
              </script><span style="font-size: 16px;"></span>
    • 三元运算符
      • 所谓“三元运算符”就是指三个操作数。
      • 语法:条件表达式 ? 结果1 : 结果2
      • 语法:操作数1 ? 操作数2 : 操作数3
      • 含义:如果条件为true,则执行"结果1"的代码;如果条件为false,则执行"结果2"的代码。
      • 其实:三元运算符,就是if else的变形形式。
                // (2)使用三元运算符
                var a = 10;
                var b = 20;
                var max = a>b ? a : b;
                document.write("最大值为:"+max);<strong><span style="color:#2d4fc9;"><span style="font-size: 16px;"></span></span></strong>
      • 实例修改:
                <script type="text/javascript">
                    // 实例:输出个人信息。
                    // (1)变量初始化
                    var name = "周更胜";
                    var sex  = "男";
                    var age  = 23;
                    var isMarried = true;
                    var salary = 2000;
                    var bonus =  500;
                    var school = "人民大学";
                    // (2)构建输出的结果
                    var str = "<h1 style='color:red;'>\""+name+"\"的基本信息如下</h1>";
                    str += "姓名:"+name;
                    str += "<br />性别:"+sex;
                    str += "<br />年龄:"+age;
                    str += "<br />婚否:"+(isMarried ? "已婚" : "未婚");
                    /*if(isMarried)
                    {
                        str += "<br />婚否:已婚";
                    }else {
                        str += "<br />婚否:未婚";
                    }*/
                    str += "<br />基本工资:"+salary;
                    str += "<br />奖金:"+bonus;
                    str += "<br />实发工资:"+(salary+bonus);
                    // if判断:如果school有值,则输出学校名;如果school无值,则输出“未填写”
                    // if的()中只能是布尔值,如果不是布尔值,则要进行类型转换
                    str += "<br />毕业院校:"+(school ? school : "未填写");
                    /*if(school)
                    {
                        str += "<br />毕业院校:"+school;
                    }else
                    {
                        str += "<br />毕业院校:未填写";
                    }*/
                    // (3)输出结果
                    document.write(str);
                </script><span style="font-size: 16px;"></span>
    • 特殊运算符
      • new运算符:创建一个对象。如:var today = new Date();   //创建一个当前系统日期时间对象
      • delete运算符:删除数组的元素,或者对象的属性。
      • typeof运算符:一元运算符,主要功能:判断变量的类型。如:typeof nametypeof(name)
      • 点运算符(.):主要应用在对象中,通过点运算符(.)去调用属性或方法。如:window.alert("ok");
      • []中括号:主要用来访问数组元素的。如:arr[0] = 100;  //找到数组中下标为0的数组元素,并重新赋值。
    • 运算符优先级

  • if条件判断语句:条件成立,执行什么代码;条件不成立,执行什么代码。
    • 结构1:只判断真(true),条件为假(false),什么都不做.
      if(条件判断:判断结果是一个布尔值)
      {
            条件为真(true),执行的代码
      }<span style="font-size: 16px;"></span>
    • 结构2:既判断真,也判断假
      if(条件判断:判断结果是一个布尔值 )
      {
          条件为真(true),执行的代码
      }else
      {
          条件为假(false),执行的代码
      }<span style="font-size: 16px;"></span>
    • 结构3:多条件判断
      if(条件1)
      {
          代码1;
      }else if(条件2)
      {
          代码2;
      }else if(条件3)
      {
          代码3;
      }else
      {
          如果以上条件都不成立,则执行该代码;
      }
      //注意:虽然有多个条件,但各条件之间是“或”的关系。每时每刻,只能有一个条件成立,不能同时满足多个条件。<span style="font-size: 16px;"></span>
  • switch分支语句
    • 描述:根据一个变量的不同取值,来执行不同的代码。
    • 语法结构:
      switch(条件判断)
      {
            case值1:
                 代码1;
                 break;
            case值2:
                 代码2;
                 break;
            case值3:
                 代码3;
                 break;
            defauly:
                 //如果以上条件都不满足,则执行该代码;
      }
    • switch结构说明:
      • switch、case、break、default都是系统关键字,都必须全小写。
      • switch后的小括号():小括号内一般是一个变量名,这个变量可能会有不同的取值。
      • 每个case的值,与变量的值进行比对,如果一致就执行该case后的代码。
      • 所有的case都是“或”的关系,每时每刻只有一个case会满足条件。
      • 每个case的代码执行完毕后,必须要用break语句结束,结束之后,程序将调到switch结束大括号之后运行。
      • 如果不写break语句的话,下面所有的case语句都会执行一遍。
            <script type="text/javascript">
            // 实例:输出今天星期几?
            /*
                (1)创建一个日期时间对象,它中有很多的信息:时、分、秒、年、月、日、星期
                (2)取出日期对象中的星期值
                (3)根据星期值(0-6)来输出中文的星期几。
            */
            // (1)创建一个日期时间对象
            var today = new Date();
            // (2)从Date对象中取出星期值
            var week = today.getDay();    //返回0-6,0代表星期日
            // (3)使用switch来输入今天是星期几
            var str = "";
            switch(week)
            {
             case 1:
                 str = "一";
                 break;
             case 2:
                 str = "二";
                 break;
             case 3:
                 str = "三";
                 break;
             case 4:
                 str = "四";
                 break;
             case 5:
                 str = "五";
                 break;
             case 6:
                 str = "六";
                 break;
             defalut:
                 str = "日";
                 break;
            }
            document.write("今天是星期"+str);
            </script>
  • if多条件判断和switch 的区别
    • if中的条件一般是一个范围(a>100),而switch中的条件一般是一个变量的不同取值。
  • while循环:只要条件成立,就重复不断的执行循环体代码
    while(条件判断)
    {
        如果条件为true,则执行循环体代码
    }<strong><span style="font-size: 19px;"></span></strong>
    • 循环结构说明:
      • 在循环开始前,必须要对变量初始化(声明变量,给变量赋个初始值)。
      • 如果while的条件为true,则会重复不断的执行循环体中({})的代码。
      • 在循环体中,必须要有“变量更新”的语句。换句话说:两次循环的变量的值不能一样,如果一样,会造成“死循环”。
           例题:输出1-10之间的所有数
           var i = 1;  //变量初始化
            while(i<=10) 
            {
                document.write(i);  //1 2 3 4 5 6 7 8 9 10
                i++; //变量更新,为了避免出现“死循环”
            }
           例题:输出1-10之间的所有数
           var i = 1;  //变量初始化
            while(i<=10) 
            {
                document.write(i);  //1 2 3 4 5 6 7 8 9 10
                i++; //变量更新,为了避免出现“死循环”
            }
            // 实例:把一个字符串,重复的输出1000次。
            var a = 1;  //(1)变量初始化
            // (2)条件判断:条件为true,则执行循环体;条件为false,退出循环
            while(a<=1000)
            {
                document.write("<h2>(第<font color='#669933'>"+a+"</font>次)第38期PHP基础班</h2>");
                a++;  //(3)变量更新
            }
            // 实例:1-100之间的所有偶数
            /*
            (1)输出1-100之间所有的数
            (2)筛选出所有偶数
            */
            var a = 1;  //(1)变量初始化
            // (2)条件判断:条件为true,则执行循环体;条件为false,退出循环
            while(a<=100)
            {
                // 如果是偶数则输出。
                if(a%2==0)
                {
                    document.write(a+"、");       
                }
                a++;  //(3)变量更新
            }
            //作业:表格隔行变色
            <script type="text/javascript">
            var str = "";
            str += "<table width=500 border=1 rules=all align=center>";
            str += "<tr align=center bgcolor=#999999>";
            str += "<td><b>编号</b></td><td><b>新闻标题</b></td><td><b>发布时间</b></td>";
            str += "</tr>";
            // 变量初始化,i代表行号
            var i = 1;
            // 条件成立,则执行循环体,否则退出循环
            while(i<=100)
            {
                // 偶数行加背景颜色,奇数行不加
                if(i%5==0)
                {
                    str += "<tr align=center bgcolor=#999999>";
                }else{
                    str += "<tr align=center>";
                }
                str += "        <td>第<font color=red>"+i+"</font>行</td><td> </td><td> </td>";
                str += "    </tr>";
                i++;   //变量更新
            }
            str += "</table>";
            // 输出结果
            document.write(str);
            </script>
  • for循环
    • 语法结构
      for(变量初始化;条件判断;变量更新)
      {
           循环体代码;
      }
      实例:输出1-100之间的所有数字
          for(var i = 1;i <= 100;i++)
          {
              document.write(i+"、");
          }
    • for循环顺序

                       
    // 实例:求1-100间所有偶数的和
    /*
    (1)输出1-100之间所有数
    (2)筛选出所有的偶数
    (3)所有偶数相加
    */
    var b = 0;
    for(var a = 1;a <= 100;a++)
    {
        if(a%2==0)
        {
                b += a;
        }
    }
    document.write("1-100偶数的和为:"+b);
  • break语句
    • 描述:break语句,用于无条件结束各种循环和switch语句。
    • 说明:一般情况下,需要再break语句之前加一个条件判断。换句话:条件成立时,就退出循环。
      //1-100所有的数,超过50不再输出
          for(var a = 1; a <= 100;a++)
          {
              if(a>50)
              {
                  break;
              }
              document.write(a+" ");
          }
          </script><span style="font-size: 16px;"></span>
  • continue语句
    • 描述:结束本次循环,而开始下一次循环。
    • 说明:一般情况下,需要再continue语句之前加一个条件判断。
          //1-100所有的数,超过50不再输出
          for(var a = 1; a <= 100;a++)
          {
              if(a%2!=0)
              {
                  continue;  //终止本次循环,开始下一次循环
                             // continue之后的代码不再执行了。
              }
              document.write (a+" ");
          }




















  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值