首页 > 其他分享 >js第二天

js第二天

时间:2024-11-10 18:16:59浏览次数:3  
标签:语句 console while js 运算符 第二天 num let

1、运算符

1.1 赋值运算符

  • 赋值运算符就是对变量赋值的运算符

    • 有 = 的就是赋值运算符

    • +=、-=、*=、\=

1.2 一元运算符

众多的Javascript的运算符可以根据所需表达式的个数分为一元运算符、二元运算符、三元运算符

  • 二元运算符:

    let num = 10 + 20

  • 一元运算符:

    • 例:正负号

  • 自增一元运算符:符合++,作用是让变量的值 + 1

    • 前置自增:++num

    • 后置自增:num++

    • 结果都是一样的

1.3 比较运算符

  • 使用场景:比较两个数据的大小、是否想等

  • 比较运算符自带隐式转换

  • NAN不等于任何(包括本身)

  • 比较运算符比较多是各自对应的ASCII码表上的值

1.4 逻辑运算符

  • 使用场景:用来解决多重条件判断

1.5 运算符优先级

2、if分支语句

2.1 if 分支语句

语法:

if(条件表达式) {
  // 满足条件要执行的语句
}

小括号内的条件结果是布尔值,为 true 时,进入大括号里执行代码;为false,则不执行大括号里面代码

小括号内的结果若不是布尔类型时,会发生类型转换为布尔值,类似Boolean()

<script>
    // 单分支语句
    // if (false) {
    //   console.log('执行语句')
    // }
    // if (3 > 5) {
    //   console.log('执行语句')
    // }
    // if (2 === '2') {
    //   console.log('执行语句')
    // }
    //  1. 除了0 所有的数字都为真
    //   if (0) {
    //     console.log('执行语句')
    //   }
    // 2.除了 '' 所有的字符串都为真 true
    // if ('pink老师') {
    //   console.log('执行语句')
    // }
    // if ('') {
    //   console.log('执行语句')
    // }
    // // if ('') console.log('执行语句')
​
    // 1. 用户输入
    let score = +prompt('请输入成绩')
    // 2. 进行判断输出
    if (score >= 700) {
      alert('恭喜考入黑马程序员')
    }
    console.log('-----------------')
​
  </script>

2.2 if双分支语句

如果有两个条件的时候,可以使用 if else 双分支语句

if (条件表达式){
  // 满足条件要执行的语句
} else {
  // 不满足条件要执行的语句
}

例如:

 <script>
    // 1. 用户输入
    let uname = prompt('请输入用户名:')
    let pwd = prompt('请输入密码:')
    // 2. 判断输出
    if (uname === 'pink' && pwd === '123456') {
      alert('恭喜登录成功')
    } else {
      alert('用户名或者密码错误')
    }
  </script>

2.3 if 多分支语句

使用场景: 适合于有多个条件的时候

 <script>
    // 1. 用户输入
    let score = +prompt('请输入成绩:')
    // 2. 判断输出
    if (score >= 90) {
      alert('成绩优秀,宝贝,你是我的骄傲')
    } else if (score >= 70) {
      alert('成绩良好,宝贝,你要加油哦~~')
    } else if (score >= 60) {
      alert('成绩及格,宝贝,你很危险~')
    } else {
      alert('成绩不及格,宝贝,我不想和你说话,我只想用鞭子和你说话~')
    }
  </script>

3、switch语句

使用场景: 适合于有多个条件的时候,也属于分支语句,大部分情况下和 if多分支语句 功能相同

注意:

  1. switch case语句一般用于等值判断, if适合于区间判断

  2. switchcase一般需要配合break关键字使用 没有break会造成case穿透

  3. if 多分支语句开发要比switch更重要,使用也更多

例如:

// switch分支语句
// 1. 语法
// switch (表达式) {
//   case 值1:
//     代码1
//     break
​
//   case 值2:
//     代码2
//     break
//   ...
//   default:
//     代码n
// }
​
<script>
  switch (2) {
    case 1:
    console.log('您选择的是1')
    break  // 退出switch
    case 2:
    console.log('您选择的是2')
    break  // 退出switch
    case 3:
    console.log('您选择的是3')
    break  // 退出switch
    default:
    console.log('没有符合条件的')
  }
</script>

4、while循环语句

使用场景:重复执行 指定的一段代码,比如我们想要输出10次 '我学的很棒'

学习路径:

1.while循环

2.for 循环(重点)

4.1 while循环

while : 在…. 期间, 所以 while循环 就是在满足条件期间,重复执行某些代码。

语法:

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

例如:

// while循环: 重复执行代码

// 1. 需求: 利用循环重复打印3次 '月薪过万不是梦,毕业时候见英雄'
let i = 1
while (i <= 3) {
  document.write('月薪过万不是梦,毕业时候见英雄~<br>')
  i++   // 这里千万不要忘了变量自增否则造成死循环
}

循环三要素:

1.初始值 (经常用变量)

2.终止条件

3.变量的变化量

例如:

<script>
  // // 1. 变量的起始值
  // let i = 1
  // // 2. 终止条件
  // while (i <= 3) {
  //   document.write('我要循环三次 <br>')
  //   // 3. 变量的变化量
  //   i++
  // }
  // 1. 变量的起始值
  let end = +prompt('请输入次数:')
let i = 1
// 2. 终止条件
while (i <= end) {
  document.write('我要循环三次 <br>')
  // 3. 变量的变化量
  i++
}

</script>

4.2 中止循环

break 中止整个循环,一般用于结果已经得到, 后续的循环不需要的时候可以使用(提高效率)

continue 中止本次循环,一般用于排除或者跳过某一个选项的时候

<script>
    // let i = 1
    // while (i <= 5) {
    //   console.log(i)
    //   if (i === 3) {
    //     break  // 退出循环
    //   }
    //   i++

    // }


    let i = 1
    while (i <= 5) {
      if (i === 3) {
        i++
        continue
      }
      console.log(i)
      i++

    }
  </script>

4.3无限循环

1.while(true) 来构造“无限”循环,需要使用break退出循环。(常用)

2.for(;;) 也可以来构造“无限”循环,同样需要使用break退出循环。

// 无限循环  
// 需求: 页面会一直弹窗询问你爱我吗?
// (1). 如果用户输入的是 '爱',则退出弹窗
// (2). 否则一直弹窗询问

// 1. while(true) 无限循环
// while (true) {
//   let love = prompt('你爱我吗?')
//   if (love === '爱') {
//     break
//   }
// }

// 2. for(;;) 无限循环
for (; ;) {
  let love = prompt('你爱我吗?')
  if (love === '爱') {
    break
  }
}

5、三元运算符(三元表达式)

使用场景: 一些简单的双分支,可以使用 三元运算符(三元表达式),写起来比 if else双分支 更简单

符号:? 与 : 配合使用

语法:

条件 ? 表达式1 : 表达式2

例如:

// 三元运算符(三元表达式)
// 1. 语法格式
// 条件 ? 表达式1 : 表达式2 

// 2. 执行过程 
// 2.1 如果条件为真,则执行表达式1
// 2.2 如果条件为假,则执行表达式2

// 3. 验证
// 5 > 3 ? '真的' : '假的'
console.log(5 < 3 ? '真的' : '假的')

// let age = 18 
// age = age + 1
//  age++

// 1. 用户输入 
let num = prompt('请您输入一个数字:')
// 2. 判断输出- 小于10才补0
// num = num < 10 ? 0 + num : num
num = num >= 10 ? num : 0 + num
alert(num)

6、断点调试

作用:学习时可以帮助更好的理解代码运行,工作时可以更快找到bug

浏览器打开调试界面

  1. 按F12打开开发者工具

  2. 点到源代码一栏 ( sources )

  3. 选择代码文件

断点:在某句代码上加的标记就叫断点,当程序执行到这句有标记的代码时会暂停下来

标签:语句,console,while,js,运算符,第二天,num,let
From: https://blog.csdn.net/2302_77669548/article/details/143653086

相关文章

  • js第三天
    1、for循环1.1遍历数组letarr=['刘德华','刘强东','马云','马化腾']   for(leti=0;i<4;i++){     document.write(arr[i]+'')   }​1.2循环嵌套for(leti=1;i<=3;i++){    ......
  • node.js毕设游戏代练系统(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景随着电子竞技行业的快速发展,游戏代练已经成为许多游戏玩家提升游戏技能、快速提升段位的一种常见方式。现有研究主要集中在电子竞技行业的发展趋势、市......
  • node.js毕设员工个人发展平台(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容一、选题背景关于员工个人发展平台的研究,现有研究主要集中在员工职业发展规划、个人成长路径设计等方面,专门针对员工个人发展平台的研究较少。在国外,员工个人发展平......
  • JS 加密之特征识别
    加密类型不可逆加密不可逆加密算法的特征输入明文后由系统直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被系统验证。常见的不可逆算法:MD5,HMAC,SHA1、SHA-224、SHA-256、SHA-384,和SH......
  • (附源码)NodeJS高校篮球队管理系统-计算机毕设 27088
    NodeJS高校篮球队管理系统目录1绪论1.1研究背景1.2国内外研究现状1.3论文结构与章节安排2平台分析2.1系统可行性分析2.1.1硬件可行性分析2.1.2软件可行性分析2.1.3经济可行性2.1.4 操作可行性2.2系统功能分析2.3 系统用例分析2.4本章小结3......
  • Three.js 实现原生化组态化 低代码 封装适用与 企业项目使用的编辑器
    开发历程开源地址https://github.com/z2586300277/three-editor预览查看https://z2586300277.github.io/three-editor/dist/#/editorThree.js案例学习https://threehub.cn/保留three.js原生态,只是将three.js内部案例功能做了一个集成,并不对底层库改变,只撰写你......
  • Nodejs安装配置
    Nodejs安装配置安装:官方地址点击跳转:Node.js—在任何地方运行JavaScript安装到D盘(C盘外)Next即可配置在安装目录下,新建node_cachenode_global两个文件夹添加到环境变量:可以不用%NODE_HOME%的方式,添加直接添加D:\nodejs\node_cacheD:\nodejs\node_gl......
  • 【JS】如何设置一个只读属性
    1.Object.defineProperty通过属性描述符将属性设置为不可修改constobj={};Object.defineProperty(obj,'name',{value:'John',writable:false,//不允许修改该属性configurable:true,//允许删除或修改属性描述符});console.log(obj.name);//输......
  • node.js毕设网上书店系统设计与实现(程序+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容选题背景关于网上书店系统设计与实现的研究,现有研究主要集中在电子商务平台的设计、用户体验优化、服务效果评估等方面。然而,专门针对网上书店系统设计与实现的研究......
  • jsonargparse python cli 开发库
    jsonargparse是一个pythoncli库,尽管不如其他库火(click)目前Lightningcli就使用了此库包含的特性自动创建cli类似Fire,typer,Clize以及Tyro支持类型校验支持通过配置文件或者环境变量的配置解析(集成confuse,configargparse,dynaconf,omegaconf)dataclass支持说明jsonargpa......