JS(JavaScript)-if-switch选择结构-for-while循环
前言:
回到JS基础,用console输出;
console.log();
输入内容:
window.prompt(); 向页面做出输入接收(类似于后端Scanner)
整数转换:parseInt();
1. 选择结构:
①if 结构
-
- if( ){ };
if 语句是基本的控制语句,能使 JavaScript 做出决定并且按条件执行语句。
-
- if( ){ }else{ };
- if( ){ }else if{ };
if...else 语句是另一种控制语句,它能使 JavaScript 选择多个代码块之一来执行。
②switch 结构
switch 语句的基本语法是给定一个判断表达式以及若干不同语句,根据表达式的值来执行这些语句。
编译器检查每个 case 是否与表达式的值相匹配。如果没有与值相匹配的,则执行缺省条件。
switch(){
case :
break;
...
defult:
break;
}
做个 石头剪刀布 小练习:
1 <script> 2 // 此处 定义 user 进行页面输入 石头剪刀布 3 var user = window.prompt("1.石头、2.剪刀、3.布!"); 4 // 此处定义 ai 为随机数 0 1 2 5 // parseInt转换为整数 6 // Math.rendom 为随机数 从0开始 *3 或 *10%3 为限制仅随机三个数 7 var ai = parseInt(Math.random() * 3); 8 // 用户: 1 2 3 --> 石头 剪刀 布 9 switch(user){ 10 case "1": 11 console.log("用户:1:石头") 12 break 13 case "2": 14 console.log("用户:2:剪刀"); 15 break; 16 case "3": 17 console.log("用户:3:布"); 18 break 19 default: 20 console.log("输入有误!"); 21 break; 22 } 23 // AI 0 1 2 --> 石头 剪刀 布 24 switch(ai){ 25 case 0: 26 console.log("ai:0:石头"); 27 break; 28 case 1: 29 console.log("ai:1:剪刀"); 30 break; 31 case 2: 32 console.log("ai:2:布"); 33 break; 34 default: 35 console.log("机器人错误!"); 36 break; 37 } 38 // 进行判断 39 // 若用户输入 -1 等于 ai 则平局 40 if((user - 1) == ai){ 41 console.log("平局!") 42 }else{ 43 // 当用户为1-石头时 44 if(user == 1){ 45 // 与 ai 判断 46 if(ai == 1){ // ai 1-剪刀 则赢 47 console.log("赢了!"); 48 }else if(ai == 2){ // ai 2-布 则输 49 console.log("输了!"); 50 } 51 } 52 // 当用户输入2时 53 if(user == 2){ 54 if(ai == 0){ // ai 0-石头 则输 55 console.log("输了!") 56 }else if(ai == 2){ // ai 2-布 则赢 57 console.log("赢了!"); 58 } 59 } 60 // 当用户输入3时 61 if(user == 3){ 62 if(ai == 0){ // ai 0-石头 则赢 63 console.log("赢了!") 64 }else if(ai == 1){ // ai 1-剪刀 则输 65 console.log("输了"); 66 } 67 } 68 } 69 </script>
2. 循环:
循环语句就是在满足一定条件的情况下反复执行某一个操作。循环语句可以有效减少程序的行数。
① for (语句1,语句2,语句3){
代码块...
}
代码:
1 <script> 2 3 // 计算数组的和 4 var array = [1,3,5,6,7]; 5 // 定义一个空的变量 存放值 6 var arraySum = 0; 7 8 // for循环 9 // array.length-数组长度(有5个值) 循环到不超过数组长度 10 for (var i = 0; i < array.length; i++) { 11 // 数组内 每次循环 赋予arraySum 12 arraySum += array[i]; 13 } 14 // F12 打印 输出 结果 15 console.log(arraySum); 16 17 </script>
② for...in :遍历数组 (类似后端foreach)
JavaScript 还支持另外一种循环模式,即 for...in 循环。这一种类型的循环将对象属性作为参数变量来实现循环。
代码:
1 <script> 2 3 // 遍历 对象 4 var object = [{name:"张三", age:20}, {name:"李四", age:30}, {name:"王五", age:40}]; 5 6 // 开始遍历 7 // var --> 一个‘小名’ --> in --> 对象 8 for (var i in object) { 9 // 输出 --> name + age 10 console.log(object[i].name + "--" + object[i].age); 11 } 12 13 </script>
视图:
③ while(循环条件){
代码块...;
}
while 循环会在指定条件为真时循环执行代码块。
注:先判断条件是否成立,再执行循环体。
代码:
1 <script> 2 3 // while循环 4 while(window.prompt("来点零食") == "来点零食"){ 5 console.log("来点溜溜梅、辣条吧。"); 6 } 7 8 </script>
视图:
④ do
{ 代码块... }
while(循环条件);
注意:do...while 是先循环,后判断。
拓展:
JS独有
=== 三等:判断数据类型。
JS弱类型造成:
alert(1 +/* flase/true/undefined)
+ undefined:非数字。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)