流控制

作者: 5cc9c8608284 | 来源:发表于2022-08-06 22:27 被阅读0次

if判断

if(条件1){
  // 如果条件1为真,就会执行代码块
  //代码块
}else if(条件2){
  //代码块
}else if(条件3){

}else{
  // 以上条件都不满足就会执行这个代码块的代码
}

以下数据均判定为false:
1).null
2).undefined
3).false
4).NaN
5).''
6).0

1.如果某个条件满足,则直接忽略后面的所有条件
2.else if可以有多个或0个
3.else可以有一个或者0个
4.else可以换行,可以不换行
5.如果代码块只有一条语句,可以省略花括号(不推荐)
6.if只能出现一次

var score=87;
//给成绩划分等级 A:>=90  B:>=70 <90  C>=50  <=70 D:其他
function getLevel(score){
  if(score>=90){
    return 'A'
  }else if(score>=70&&score<90){
    return 'B'
  }else if(score>=50&&score<=70){
    return 'C'
  }else{
    return '其他'
  }
}
console.log(getLevel(score));//B

//简写形式
function getLevel(score){
  if(score>=90){
    return 'A'
  }else if(score>=70){
    return 'B'
  }else if(score>=50){
    return 'C'
  }else{
    return '其他'
  }
}
console.log(getLevel(score));

var score=97;
//给成绩划分等级 A:>=90  B:>=70 <90  C>=50  <=70 D:其他
// 三个独立的if块
//这种判断的条件更多 影响执行效率
if(score>=90){//符合条件打印A
  console.log('A');
}
if(score>=70){//符合条件,打印B
  console.log('B');
}
if(score>=50){//符合条件,打印C
  console.log('C');
}else{
  console.log('D');
}

//x的打印结果为多少
var x=1;
if(x++>=1){//true
  x++
}else if(++x>=2){
  x++
}else{
  x--
}
console.log(x);//3

//x的打印结果是多少
if(!x){
  x=1
}
if(false){//就算这里的条件为false.下面的var x也会发生代码提升
  var x;//这里会发生变量提升,相当于在js脚本的第一行声明了x,但是并没有赋值
}
console.log(x);//1

补充

用户输入:prompt

返回类型:null或者字符串

该表达式得返回结果:

1.null:表示用户点击了取消
2.用户输入的字符串:表示用户点击了确定,得到用户输入的结果

let num=prompt('请输入一个数字',0);//等待用户操作(确定,取消) 将用户操作的结果保存到变量result中
console.log(num);

let num=prompt('请输入一个数字',0);
console.log(typeof  num);//string

将字符串转换为数字:+字符串

// 让用户输入一个数字,如果点击了取消,输出取消,如果点击了确定,根据输入的内容判断输入是否正确
var result=prompt('请输入你的年龄',18);
if(typeof result=='object'){
  console.log('您已取消');
}else if(typeof +result=='number'){
  console.log(`您输入的年龄是${result}`);
}else {
  console.log('类型错误');
}

var result=prompt('请输入您的年龄');
if(result===null){
  console.log('点击了取消');
}else{
  //点击了确定
  result=+result;//转换为数字
  if(isNaN(result)){
    //不是正常的数字
    console.log('输入有误');
  }else{
    console.log(result,typeof result);
  }
}

练习题

  1. 提示用户输入一个三位数,若不是三位数,则提示用户输入有误;若是三位数,则判断该数能否被13整除。
// 提示用户输入一个三位数,若不是三位数,则提示用户输入有误;若是三位数,则判断该数能否被13整除
var result=prompt('请输入一个三位数字',000);
//用户点击了取消
if(result===null){
  console.log('您点击了取消');
  //用户点击了确定
}else if(result.length!=3){
  console.log('输入有误');
}else{
  //输入的长度等于3
  //输入位数是正确的
  // 判断是不是数字
  result=+result;
  if(isNaN(result)){
    //不是一个正常的数字
    console.log('请输入合适的数字');
  }else{
    // 判断该数能否被13整除
    if(result%13==0){
      console.log('可以被13整除');
    }else{
      console.log('不能被13整除');
    }
  }
}


let result=+prompt('请输入一个三位数');
if(isNaN(result)||result<100||result>999){
  console.log('输入有误');
}else{
  //判断是否能被13整除
  if(result%13==0){
    console.log('能被13整除');
  }else{
    console.log('不能被13整除');
  }
}
  1. 让用户输入一个成绩(0-100),判断这个成绩属于哪个范围并输出结果(A:90-100 B:70-89 C:60-69 D:40-59 E:0-39),若用户输入的不是0-100的数字,则输出输入有误。
// 让用户输入一个成绩(0-100),判断这个成绩属于哪个范围并输出结果
// (A:90-100  B:70-89  C:60-69  D:40-59  E:0-39),若用户输入的不是0-100的数字,则输出输入有误
var score=prompt('请输入您的成绩',0);
if(isNaN(score)||score<0||score>100){
  console.log('输入有误');
}else{
  if(score>=90){
    console.log('A');
  }else if(score>=70){
    console.log('B');
  }else if(score>=60){
    console.log('C');
  }else if(score>=40){
    console.log('D');
  }
  else{
    console.log('E');
  }
}
  1. 根据世界卫生组织推荐的计算方法,
    男性标准体重计算方法为(身高cm-80)×70﹪
    女性标准体重计算方法为(身高cm-70)×60﹪
    标准体重正负10%为正常体重,低于标准体重的10%为过瘦,高于标准体重的10%为过重
    编写程序,让用户输入性别、身高、体重,判断用户的健康状况
    健康状况有3种:
  1. 你的体重正常,请继续保持
  2. 你的身体偏瘦,请加强营养
  3. 你的身体偏胖,请加强锻炼
let sex=prompt('请输入您的性别(0表示女性,1表示男性)',);
let height=prompt('请输入您的身高(单位为cm)',160);
let weight=prompt('请输入您的体重(kg)');
if(sex!=0||sex!=1||isNaN(weight)||isNaN(height)){
  console.log('输入有误');
}
//计算标准体重得函数
function getWeight(sex,height){
  if(sex==0){
    //女性
    return (height-70)*0.6
  }else{
    //男性
    return (height-80)*0.7
  }
}
let standardWeight=getWeight(sex,height);
// 最高标准体重
let highStandardWeight=standardWeight*(1+0.1);
// 最低标准体重
let lowerStandardWeight=standardWeight*(1-0.1);
  // console.log('你的体重正常,请继续保持');
  // 属于健康范围
  if(weight>highStandardWeight){
    console.log('你的身体偏胖,请加强锻炼');
  }else if(weight<lowerStandardWeight){
    console.log('你的身体偏瘦,请加强营养');
  }else{
    console.log('你的体重正常,请继续保持');
  }
  1. 某理财公司推出一种理财服务,服务规则如下:
    若用户的理财金额在50万元以下,则每年的收益按照4%计算。
    若用户的理财金额在50万元以上(包括50万),则每年收益按照4.5%计算。
    若用户的理财金额超过200万,除了理财收益外,还要额外给予用户收益金额的10%
    编写程序,让用户输入理财金额和理财年限,计算到期后的收益
let money=prompt('请输入理财金额');
let year=prompt('请输入理财年限');
// 容错
if(isNaN(money)||isNaN(year)||year<=0||money<=0){
  console.log('输入错误');
}
function calcProfit(money,year){
  
//假设用户输入的是正确的金额
if(money<500000){
  return money*(0.04)*year
}else if(money>=500000&&money<2000000){
  return parseInt(money*(0.045)*year)
}else{
  let lirun=money*(0.045)*year;
  return parseInt(lirun*(1+0.1))
}
}
console.log(calcProfit(money,year));
  1. 编写一个用户和计算机猜拳的游戏,用户输入剪刀、石头或布,与计算机的出拳进行比较,判断胜负
let userFist=prompt('请出拳(剪刀或者石头或者布)');
let arr=['石头','剪刀','布'];
let computerFistIndex=Math.floor(Math.random()*arr.length);
let computerFist=arr[computerFistIndex];
if(userFist!='石头'&&userFist!='剪刀'&&userFist!='布'){
  console.log('输入错误');
}else{
  console.log(userFist,computerFist);
  if(userFist==computerFist){
    console.log('平局');
  }else if(userFist=='剪刀'&&computerFist=='石头'||userFist=='石头'&&computerFist=='布'||userFist=='布'&&computerFist=='剪刀'){
    console.log('计算机胜利');
  }else {
    console.log('用户胜利');
  }
}

相关文章

  • 9.控制流(theControlFlow)

    控制流 kotlin_控制流 swift控制流

  • Python | 常用的控制流语句

    一、控制流语句介绍 了解什么是控制流语句以及Python常用的两种控制流语句。 1.控制流语句 控制流语句即用来实...

  • 控制流

    上一篇:基础运算当前篇:控制流下一篇:集合类型 从大体来讲控制流分为条件语句和循环语句,而这两种语句差不多就是程序...

  • 控制流

    0. 分支结构 概念:指程序的 流程走向,比较像一棵树 分散 的 树枝 分类单分支判断1. 一般形式 age ...

  • 控制流

    控制流 [TOC] Swift提供了多种流程控制结构,包括可以多次执行任务的while循环,基于特定条件选择执行不...

  • 控制流

    语句与程序块 在表达式之后加上一个分号(;),它们就变成了语句。例如: 在C语言中,分号是语句的结束符。用一对花括...

  • 控制流

    foreach bind 1.示例 2.不带元素的绑定 if bind 1.绑定示例 if 绑定是很重要的,它能让...

  • 控制流

    For循环 for循环用来按照指定的次数多次执行一系列语句。Swift 提供两种for循环形式: for-in用来...

  • 控制流

    For-In 循环 输出乘 5 乘法表前面一部分内容: 如果你不需要区间序列内每一项的值,你可以使用下划线( _ ...

  • 控制流

    控制流 if表达式 在 Kotlin 中,if是一个表达式,即它会返回一个值。因此就不需要三元运算符(条件 ? 然...

网友评论

      本文标题:流控制

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