一、逻辑分支(续)

  1、三目运算符:条件运算符

  a>b?c:d;表达式1?表达式2:表达式3;  

  根据表达式1执行的结果,来决定执行表达式2还是表达式3

  表达式1结果是true执行表达式2,最终返回表达式2的结果

  表达式1结果是false执行表达式3,最终返回表达式3的结果

  2、Switch/case

  语法:

switch(表达式){

case 表达式1:分支语句一;

break;

case 表达式2:分支语句二;break;

case 表达式3:分支语句三;break;

case 表达式n:分支语句n;break;

default:默认分支语句;break;

}

  规范:

  1.所有的括号成对输入

  2.所有的双引号成对输入

  3.一句话占一行(不用多句话写在一行)

  4.花括号单独占一行

  5.缩进对齐:

a)同级对齐

b)子一级比上一级缩进4个空格

  注意点:

  1.if后面的()不能省略,()后面不要加分号

  2.if分支中即使一句话也要把{}写上(一行代码3块钱)

  3.if嵌套不要超过五层(最好不要超过3层)

  4.Switch语句里把default分支一定要写上,防止在以后的维护中产生歧义(default:相当于if else最后的else)

  把执行概率更大(正常情况)放在前面(if,case)

  5.if else 和 switch用谁?

  判断范围用if else   ,等值一般用switch;

 一个简单的成绩等级划分

 1  var score =100;
2
3   switch(parseInt(score/10)){
4
5    case 10:
6
7    case 9:
8
9     console.log("A");
10
11     break;
12
13    case 8:
14
15     console.log("B");
16
17     break;
18
19    case 7:
20
21     console.log("C");
22
23     break;
24
25    case 6:
26
27     console.log("D");
28     break;
29
30    default :console.log("E");
31     }

二、循环

1、while /do while

/*
while条件表达式()
循环体;
*/
1、条件表达式是一个boolean值,为true则执行循环体,为false则跳出,并且只能修饰一条语句;
2、执行顺序,先条件,再语句;
3、一个有限次的循环,必须有一个使循环趋近于结束的条件,
4、死循环是好还是坏??看情况(输入密码账号错误的时候)

while 练习: 

//小于100的数的和

1    var sum = 0;
2 var i = 1;
3
4 while (i <= 100) {
5 sum += i;
6 i++;
7 }
8
9 console.log(i,sum);

//入职薪水10K,每年涨幅5%,50年后工资多少?

1 var salary = 10000;
2 var i = 1;
3
4 while(i<=50){
5 salary *= 1+0.05;
6 i++;
7 }
8
9 console.log(salary);

//打印100以内7的倍数

1 var i = 1;
2
3 while(i<=100){
4 if(i%7==0){
5 console.log(i);
6 }
7 i++;
8 }
9

//打印100以内的奇数

1 var i = 1;
2
3 while(i <= 100){
4 if(i%2){ //1 == true
5 console.log(i);
6 }
7 i++;
8 }

2、do while

  ***结构***  

  do{
  循环体;
  }while(条件表达式);

while和do while的区别和不同

  while与do while唯一的区别
  执行顺序不同
  do...while先语句在条件
  while 先条件在语句

  do...while与while 异同
  当首次条件成立时,这俩没区别
  当首次条件不成立时,do...while执行一次循环体,while直接跳出

3、for

  for(表达式1;表达式2;表达式3){1243243243...
  表达式4
  }

  for(;;){} 绝对不能省略,除此之外表达式1234都能省略
  表达式1:为循环变量赋初值
  表达式2:条件
  表达式3:使循环趋近于结束的条件
  表达式4:循环体语句

1 var sum = 0;
2
3 for(var i=1; i <= 100;i++){
4 sum += i;
5 }
6
7 console.log(i, sum);

学习JS的第三天的更多相关文章

  1. 一起学习造轮子(三):从零开始写一个React-Redux

    本文是一起学习造轮子系列的第三篇,本篇我们将从零开始写一个React-Redux,本系列文章将会选取一些前端比较经典的轮子进行源码分析,并且从零开始逐步实现,本系列将会学习Promises/A+,Re ...

  2. ASP.NET MVC学习---(八)三个比较常用的方便的功能

    通过之前的了解 现在我们已经可以使用mvc进行一些简单的开发 但是还不够 哪里不够呢? 为什么现在的程序员喜欢用mvc进行开发 不就是因为它爽吗? 之前介绍的那些特点仅仅是mvc框架的一小部分 只是一 ...

  3. 前端学习:JS(面向对象)代码笔记

    前端学习:JS(面向对象)代码笔记 前端学习:JS面向对象知识学习(图解) 创建类和对象 创建对象方式1调用Object函数 <body> </body> <script ...

  4. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  5. WCF学习之旅—第三个示例之二(二十八)

    上接WCF学习之旅—第三个示例之一(二十七) 五.在项目BookMgr.Model创建实体类数据 第一步,安装Entity Framework 1)  使用NuGet下载最新版的Entity Fram ...

  6. WCF学习之旅—第三个示例之三(二十九)

    上接WCF学习之旅—第三个示例之一(二十七) WCF学习之旅—第三个示例之二(二十八) 在上一篇文章中我们创建了实体对象与接口协定,在这一篇文章中我们来学习如何创建WCF的服务端代码.具体步骤见下面. ...

  7. WCF学习之旅—第三个示例之五(三十一)

       上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九) WCF学习 ...

  8. 学习js回调函数

    <!DOCTYPE HTML> <html> <head> <meta charset="GBK" /> <title> ...

  9. css学习归纳总结(三) 转

    原文地址:css学习归纳总结(三) 为文档添加样式的三种方法 行内样式 行内样式是写在HTML标签的style属性里的,比如: <p style="font-size: 12px;fo ...

随机推荐

  1. struts2 使用ajax进行图片上传

    第一步:引入一个插件    jquery.form.js /*! * jQuery Form Plugin * version: 3.36.0-2013.06.16 * @requires jQuer ...

  2. js正则常用方法

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <title>W3 ...

  3. ubuntu18.04 kuebadm 安装 k8s-1.15.9

    ubuntu kubeadm 搭建kubernetes1.15.9 准备 update && 安装docker apt-get update apt install docker 修改 ...

  4. Radius协议-学习

    目录 RFC Radius 协议 Radius-学习 RADIUS协议的主要特征 客户端/服务器模式 安全的消息交互机制 良好的扩展性 AAA介绍 C/S结构 RADIUS在协议栈中的位置 RADIU ...

  5. 从零开始学算法---二叉平衡树(AVL树)

    先来了解一些基本概念: 1)什么是二叉平衡树? 之前我们了解过二叉查找树,我们说通常来讲, 对于一棵有n个节点的二叉查找树,查询一个节点的时间复杂度为log以2为底的N的对数. 通常来讲是这样的, 但 ...

  6. 洛谷4360[CEOI2004]锯木厂选址 (斜率优化+dp)

    qwq 我感觉这都已经不算是斜率优化\(dp\)了,感觉更像是qwq一个\(下凸壳优化\)转移递推式子. qwq 首先我们先定义几个数组 \(sw[i]\)表示\(w[i]\)的前缀和 \(val[i ...

  7. c++-string类--insert函数

    string &insert(int p0, const char *s);--在p0位置插入字符串s string &insert(int p0, const char *s, in ...

  8. NOIP模拟79

    T1 F 解题思路 因为每个点会产生贡献当且仅当它在可以到他的点之前被删除,并且此题遵守期望的线性性. 因此设所有可以到达点 \(i\) 的数量为 \(c_i\) 那么答案就是 \(\sum \fra ...

  9. Spark分区器浅析

    分区器作用:决定该数据在哪个分区 概览: 仅仅只有pairRDD才可能持有分区器,普通RDD的分区器为None 在分区器为None时RDD分区一般继承至父RDD分区 初始RDD分区数: 由集合创建,R ...

  10. 【UE4 设计模式】原型模式 Prototype Pattern

    概述 描述 使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.如孙悟空猴毛分身.鸣人影之分身.剑光分化.无限剑制 原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象, ...