JS分支、循环、数组 | 前端笔记(八)

本文介绍了编程中的基本控制结构,包括if单双多分支语句,三元运算符和switch的选择性执行。同时讲解了断点调试方法。接着,探讨了循环语句如while和for的使用,以及如何中止和构造无限循环。此外,详细阐述了数组的声明、访问、操作,如增删查改,并展示了冒泡排序和数组排序的方法。
摘要由CSDN通过智能技术生成

5.分支语句

(1)if分支语句

语法:

1.单分支语句:
if(条件表达式) {
满足条件要执行的语句
}

2.双分支语句:
if (条件表达式){
满足条件要执行的语句
} else {
不满足条件要执行的语句
}

3.多分支语句:
if (条件1) {
语句1
} else if (条件2) {
语句2
} else if (条件3) {
语句3
} else {
语句4
}

备注:除了0所有的数字都为真,除了’ '所有的字符串都为真。

(2)三元运算符和switch语句

1.三元运算符语法:条件 ? 满足条件执行 :不满足条件执行

2.switch语句:

``switch (值) { case 值1: 代码1 break case 值2: 代码2 break default: 代码n }

备注:

1.switch…case通常处理case为比较确定值的情况,而if…else…通常用于范围判断。

2.当分支比较少时用if…else;当分支比较多时,用switch。

(3)断点调试

​ 浏览器打开调试界面

  1. 按F12打开开发者工具
  2. 点到源代码一栏 ( sources )
  3. 选择代码文件刷新

6.循环语句

(1)while循环

语法:

while (循环条件) {
要重复执行的代码(也叫循环体)
}

循环三要素:

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

2.终止条件

3.变量的变化量

let i = 1
while (i <= 3) {
  document.write('哈哈哈')
  i++   
}
(2)中止循环和无限循环

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

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

3.while(true)for( ; ; )都可以来构造“无限”循环,需要使用break退出循环。

(3)for循环

语法格式:
for(变量起始值; 终止条件; 变量变化量) {
要重复执行的代码
}

for (let i = 1; i <= 3; i++) {    
    document.write('月薪过万')
}

//遍历数组
let arr = ['刘德华', '刘晓强', '刘晓庆', '刘若英', '刘热巴', 'pink老师']
for (let i = 0; i < arr.length; i++) {    
    console.log(arr[i])
}
(4)循环嵌套

语法:

for(外部声明记录循环次数的变量; 循环条件; 变化量) {
for(内部声明记录循环次数的变量; 循环条件; 变化量) {
要重复执行的代码
}
}

let row = +prompt('请输入行数:')
let col = +prompt('请输入列数:')
//外层循环打印行数
for (let i = 1; i <= row; i++) {
//里层循环打印几个星星
     for (let j = 1; j <= col; j++) {
          document.write('☆')
      }
      document.write('<br>')
}

7.数组

(1)声明数组和访问数组

声明:let 数组名 = [数据1,数据2,数据3,...] 或者 let 数组名 = new Array(数据1,数据2...)
访问:变量名[索引值或者下标]

let classes = ['小明', '小刚', '小红', '小丽', '小米']

//访问
classes[0]
//下标从0开始

备注:数组长度:数组名.length

遍历数组:
for (let i = 0; i < 数组名.length; i++) {    
    数组名[i]
}

遍历累加:
for (let i = 0; i < arr.length; i++) {
     sum = sum + arr[i]
}

求最大值:
let arr = [2, 6, 1, 7, 400, 55, 88, 100]
//max里面要存的是最大值
let max = arr[0]
//遍历数组
for (let i = 1; i < arr.length; i++) {
//如果max 比 数组元素里面的值小,我们就需要把这元素赋值给 max
     if (max < arr[i]){
         max = arr[i]
     }
}
(2)操作数组
1.查:数组名[下标]
2.改:数组名[下标]=新的值
3.增

1.数组名.push( )将元素添加到数组末尾,返回该数组新长度。

2.数组名.unshift( )将元素添加到数组开头,返回该数组新长度。

语法:
arr.push(元素1,...元素n)

语法:
arr.unshift(元素1,...元素n)

let arr = ['pink', 'hotpink']
//新增 push 推末尾
arr.push('deeppink')
console.log(arr.push('deeppink'))  //3  //返回该数组新长度

//开头追加
arr.unshift('red')

4.删

1.数组名.pop( )删除最后一个元素,返回该元素的值。

2.数组名.shift( )删除开头一个元素,返回该元素的值。

语法:
arr.pop()
arr.shift()

let arr = ['red', 'green', 'blue']
arr.pop()
console.log(arr.pop())   // blue

arr.shift()

3.数组名.splice( )删除指定元素。

语法:
arr.splice(start,deleteCount)
arr.splice(起始位置,删除几个元素) //如果不指定deleteCount,则默认删到最后

let arr = ['red', 'green', 'blue']
arr.splice(1, 1)   //是从索引号1的位置开始删,只删除1个
arr.splice(1)  //从green 删除到最后
(3)冒泡排序
let arr = [5, 4, 3, 2, 1]
for (let i = 0; i < arr.length - 1; i++) {
   for (let j = 0; j < arr.length - i - 1; j++) {
// 开始交换 但是前提 第一个数大于第二个数才交换
     if (arr[j] > arr[j + 1]) {
// 交换2个变量
       let temp = arr[j]
       arr[j] = arr[j + 1]
       arr[j + 1] = temp
     }
   }
 }
 
数组排序:
arr.sort()  // 排序
//sort 升序排列
arr.sort(function (a, b) {
   return a - b
 })
//sort() 降序
arr.sort(function (a, b) {
    return b - a
})
console.log(arr)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值