1. 分支结构

1.1 分支语句之单分支

①.语法:

if(值,如果不是布尔值会强制转换成布尔值) {
代码块;
}

②.案例:

// 案例:如果a变量的值加键盘上输入的数大于100,就打印我爱你二狗子!
var a = 30;
// prompt():页面弹出输入框的函数,可以获取用户输入内容,返回对应的字符串
var num = parseInt(prompt('可以输入一个数字'));
if (num + a > 100) {
console.log('我爱你二狗子');
}

1.2 分支语句之双分支

①.语法:

  if(值,这个值如果不是布尔值,会强转为布尔值){
代码块
}else{
代码块
}

②.案例:

  var num = parseInt(prompt('请输入一个数'));
if (num > 0) {
console.log(--num);
} else {
console.log(++num);
} // 如果双分支代码块只有一行代码,可以使用三元运算符替代
var num1 = parseInt(prompt('请输入一个数'));
num1 > 0 ? num1-- : num1++;
console.log(num1);

1.3 分支语句之多分支

①.语法:

  if(值,这个如果不是布尔值,会强转为布尔值){
代码块
}else if(值,这个如果不是布尔值,会强转为布尔值){
代码块
}else if(值,这个如果不是布尔值,会强转为布尔值){
代码块
}else{
代码块
}

②.案例:

// 输入体重判断属于什么样的体型
// 70 - 90 骨感美
// 90 - 120 性感美
// 120 - 150 微胖美
// 150 - 200 丰满美
// 200 -300 灵魂美 var weight = parseInt(prompt('输入你的体重'));
// 注意点:不可以使用 70<=weight<=90这种写法
// 原因:70<=weight 返回true或false 与后面的90比较会转换成数字0或1,与原先的语义不一致
if (weight >= 70 && weight <= 90) {
console.log('骨感美');
} else if (weight >= 90 && weight <= 120) {
console.log('性感美');
} else if (weight >= 120 && weight <= 150) {
console.log('微胖美');
} else if (weight >= 150 && weight <= 200) {
console.log('丰满美');
} else if (weight >= 200 && weight <= 300) {
console.log('灵魂美');
} else {
console.log('请输入70 - 300之间的数');
}

1.4 分支语句之 switch case

①.语法

1. key是一个值,不会进行转化
2. 从上到下,当key与value全等于的时候会进入该分支,只有遇到break才会跳出switch
如果没有匹配的case分支,会执行最后的default默认分支
switch (key) {
case value:
代码块;
break;
case value:
代码块;
break;
...
default:
break;
}

break:用来跳出循环

②.案例

    // 1.输入一个数字,判断是星期几
var day = parseInt(prompt('请输入一个(1-7)的数字'));
// 注意点
// 1、值的判断使用的是 ===
// 2、进入某个分支,只有遇到break才能跳出switch
switch (day) {
case 1:
console.log('今天是周一');
break;
case 2:
console.log('今天是周二');
break;
case 3:
console.log('今天是周三');
break;
case 4:
console.log('今天是周四');
break;
case 5:
console.log('今天是周五');
break;
case 6:
console.log('今天是周六');
break;
case 7:
console.log('今天是周日');
break;
default:
console.log('输入1到7的数字');
break;
} // 2. 输入分数,判定优良差和不及格(多分支版本 switch版本)
// 90 ~ 100 A
// 80~90 B
// 70~80 C
// 60~70 D
// 0~ 60 不及格
// 其它 提示
var score = parseInt(prompt('请输入你的分数'));
// 这种true的用法也需要注意
switch (true) {
case score >= 90 && score <= 100:
console.log('A');
break;
case score >= 80 && score <= 90:
console.log('B');
break;
case score >= 70 && score <= 80:
console.log('C');
break;
case score >= 60 && score <= 70:
console.log('D');
break;
case score >= 0 && score <= 60:
console.log('不及格');
break;
default:
console.log('请输入一个0-100的分数');
break;
} // 3.输入年龄 判定是童年少年青年中年老年
var age = parseInt(prompt('输入年龄'));
switch (true) {
case age > 0 && age <= 6:
console.log('童年');
break;
case age > 6 && age <= 18:
console.log('少年');
break;
case age > 18 && age <= 30:
console.log('青年');
break;
case age > 30 && age <= 50:
console.log('中年');
break;
case age > 50:
console.log('老年');
break;
default:
console.log('请输入正确的年龄。');
}

2. 循环结构

2.1 for 循环

①.语法

    for (初始化表达式,条件表达式,自增自减表达式){
循环体;
}

②.执行流程

    循环执行过程
1.首次执行
1-1 执行初始化表达式
1-2 执行条件表达式(符合条件执行循环体,不符合跳出循环)
1-3 执行循环体
1-4 执行自增自减表达式 2.非首次执行
2-1 执行条件表达式 (符合条件执行循环体,不符合跳出循环)
2-2 执行循环体
2-3 执行自增自减表达式

③.总结

    1. 首次执行和非首次执行 区别在于是否执行初始化表达式
2. 循环的此时看i 每次循环中的i都会变化
3. 循环的结束条件,条件表达式的值为false

④.案例

    // 打印1-100之间的整数
for (var i = 1; i <= 100; i++) {
// console.log(i);
} // 打印1-100之间的偶数
for (var index = 1; index <= 100; index++) {
if (index % 2 == 0) {
// console.log(index);
}
} // 计算1到100的和
var sum = 0;
for (var i = 1; i <= 100; i++) {
sum += i;
}
// console.log(sum); // 计算1-100之间所有偶数的和
var sum = 0;
for (var i = 1; i <= 100; i++) {
if (i % 2 == 0) {
sum += i;
}
}
// console.log(sum); // 计算100的阶乘 1*2....*100
var sum = 1;
for (var i = 1; i <= 100; i++) {
sum *= i;
}
// console.log(sum); // 打印三位数位上有3或者7的数字
for (var i = 100; i < 1000; i++) {
var x = parseInt(i / 100);
var y = parseInt(i / 10 % 10);
var z = i % 10;
if (x == 3 || x == 7 || y == 3 || y == 7 || z == 3 || z == 7) {
// console.log(i);
}
} // 求100 - 999之间的水仙花数
for (var i = 100; i <= 999; i++) {
var x = parseInt(i / 100);
var y = parseInt(i / 10 % 10);
var z = i % 10;
if (x * x * x + y * y * y + z * z * z == i) {
console.log(i);
}
}

(三).JavaScript的分支结构和循环结构的更多相关文章

  1. Chrome弹窗的简单应用(选择结构与循环结构)

    ★选择结构★ ★JS实现弹窗显示随机数 示例代码效果图   ★ 弹窗实现对随机数的进一步判断 示例代码效果图 ★综合应用   比较大小 ★ 判断成绩等级 ): : : : : alert(" ...

  2. 黑马程序员——JAVA基础之程序控制流结构之循环结构,循环嵌套

    ------- android培训.java培训.期待与您交流! ---------- 循环结构: 代表语句:while ,do while ,for while语句格式 : while(条件表达式) ...

  3. Java程序流程控制:判断结构、选择结构、循环结构

    本文内容: 判断结构 if 选择结构 switch 循环结构 while do-while for for each break.continue return 首发时间:2017-06-22 21: ...

  4. 大数据学习--day04(选择结构、循环结构、大数据java基础面试题)

    选择结构.循环结构.大数据java基础面试题 switch: 注意: byte short int char String(jdk1.7支持) 不能是 long float double boolea ...

  5. 039 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 01 循环结构概述

    039 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 01 循环结构概述 本文知识点:循环结构概述 循环结构主要内容 while 循环 do-whiile ...

  6. java顺序结构、循环结构、选择结构

    java顺序结构.选择结构.循环结构 顺序结构: 语句与语句之间,框与框之间是从上到下的顺序进行的,它是由若干个依次执行的处理步骤执组成的,它是任何一个算法都不离开的一种基本算法结构. 选择结构: 1 ...

  7. Javascript开发技巧(JS中的变量、运算符、分支结构、循环结构)

    一.Js简介和入门 继续跟进JS开发的相关教程. <!-- [使用JS的三种方式] 1.HTML标签中内嵌JS(不提倡使用): 示例:<button onclick="javas ...

  8. java第三课:分支结构、循环结构

    分支结构 1.if后面可以不加{},但是不建议,容易产生误解2.写程序的时候先防屌丝测试,再写逻辑,否则会出错3.if:一条分支 if else:两条分支 if...else if...:多条分支(结 ...

  9. JS基础-----JS中的分支结构及循环结构

    [分支结构] 一.if-else结构 1.结构的写法:if(判断条件){ //条件为true时,执行if的{} }else{ //条件为false时,执行else的{} } 2.注意事项 ①else语 ...

  10. C#学习笔记11:C#中的顺序结构、分支结构、循环结构

    顺序结构: 代码从Main()函数开始运行,从上到下,一行一行的执行,不漏掉代码. Int a=6; int b=5; int c=a+b; Console.Write(c); 分支结构: 代码有可能 ...

随机推荐

  1. Centos7 安装Mysql8 主从数据库

    前提条件 准备了两台虚拟机 mysql-master 192.168.30.199, mysql-slave 192.168.30.198 1:官网下载并安装Mysql8 1:安装mysql 1.1: ...

  2. cv::eigen

    void TestEigen() { cv::Mat m = (cv::Mat_<float>(3, 3) << 1, 2, 3, 2, 5, 6, 3, 6, 7); cv: ...

  3. [NepCTF2022]中学数学

    中学数学 p.q挣扎很久没分解出来,wp出来了赶紧复现试试. 题目 from gmpy2 import * from Crypto.Util.number import * from secret i ...

  4. background-repeat属性(背景平铺)

    background-repeat属性(背景平铺) 默认情况下,如果一幅背景图像不足以占满整个容器时,就会在水平方向和垂直方向重复,以填满整个容器.然而,有时候却希望背景图像只出现一次,或只在某个方向 ...

  5. 统计学习导论(ISLR)(三):线性回归(超详细介绍)

    统计学习导论(ISLR) 参考资料: The Elements of Statistical Learning An Introduction to Statistical Learning 统计学习 ...

  6. asp.net mvc api swagger 配置

    1.安装插件 Swashbuckle(版本5.6.0) 和 Swagger.Net.UI(版本1.1.0) 2.SwaggerNet类中注释掉一下代码: using System; using Sys ...

  7. 2022-3-18内部群每日三题-清辉PMP

    1.在评估项目活动现状的会议中,团队发现存在一些影响可交付成果的风险.项目经理应该怎么做? A.跟踪已发现的风险,识别和分析新风险,并评估整个项目的风险过程有效性 B.记录风险管理信息用于经验教训 C ...

  8. IE浏览器a标签无法下载问题解决(IE浏览器a标签download属性不兼容问题解决)

    //下载文件流函数,只支持get方法. export function downBlob(payload) { return new Promise(((resolve, reject) => ...

  9. pg的json类型

    以下举例说明: postgres=# select '{"b":1,"a":2}'::json; json --------------- {"b&q ...

  10. FPGAUSB控制器编程

    FPGA产生PLL LED子module,显示FPGA在运行 USB控制子module,USB时钟输入,状态输入,总线输出,USBFIFO地址总线,数据双向总线. USB状态机,Flaga有效时,转为 ...