while循环和for循环
循环一定要有三要素这里直接上黑马程序员老师的课件把
while循环适用于你不知道循环多少次但是有退出条件的时候
for循环主要用于指定循环多少次,比如遍历数组
注意一定要有循环的退出条件不然你的电脑内存小就完蛋了!!!!!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>循环</title>
</head>
<body>
<script>
// while循环教学示例
let i = +prompt("请输入循环的次数")
let k = i
while (i > 0) {
document.write("while循环次数为:" + i + "<br>")
i--
}
//for循环教学示例
for (let j = k; j > 0; j--) {
document.write("for循环次数为:" + j + "<br>")
}
</script>
</body>
</html>
注意for循环里面进来先执行小括号里的东西然后先执行let j = k注意这句话在for循环里就会执行一次,然后开始进行判断j是不是大于0,如果满足就开始打印大括号里面的内容然后就开始进行j–,然后在开始判断j是不是大于0以此类推
break和continue
这个没啥好说的,和其他语言一样的注意在循环里面break和continue后面的代码是不会被执行的,注意是在循环的大括号里面哈,出了大括号之后代码会接着往下走
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>break和continue</title>
</head>
<body>
<script>
// break是直接跳出循环
for(let i = 0;i<=10;i++){
if(i === 5){
break
}
document.write(i + "<br>") // 这里会打印0-4 因为到5的时候就跳出循环了
}
document.write('分隔-----------' + "<br>")
// continue是跳出本次循环,继续循环
for(let i = 0;i<=10;i++){
if(i === 5){
continue
}
document.write(i + "<br>") // 这里会打印0-4 5-9 因为到5的时候就跳出本次循环了,继续循环
}
</script>
</body>
</html>
结果
遍历数组
直接上代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>break和continue</title>
</head>
<body>
<script>
// 声明一个数组
arr1 = [1,2,3,4,5,6,7,8,9,10]
for(let i=0;i<arr1.length;i++ ){
document.write(arr1[i] + "<br>")
}
</script>
</body>
</html>
结果
嵌套循环
没啥难度,和其他语言一样的
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>break和continue</title>
</head>
<body>
<script>
// 双层循环打印99乘法表
for(let i=1;i<=9;i++){
for(let j=1;j<=i;j++){
document.write(i+"*"+j+"="+i*j+" ")
}
document.write("<br>")
}
</script>
</body>
</html>
效果
求数组最大值
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>求数组最大值</title>
</head>
<body>
<script>
let arr1 = [45,66,78,95,16,35,48,98,12,34]
let max = 0
for(let i=0;i<arr1.length;i++){
if(arr1[i]>max){
max = arr1[i]
}
}
document.write(`最大值是 ${max} `)
</script>
</body>
</html>
结果
数组增删改
其实就是一些方法的调用,没啥东西,这里在给小破站黑马程序员的pink老师打一下广告,他这个课件真好哇
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>求数组最大值</title>
</head>
<body>
<script>
// 数组是一种数据类型,是一种对象,数组里的数据是有顺序的,单个变量可以存储多个字面量
let arr1 = [45,66,78,95,16,35,48,98,12,34] // 声明一个数组
console.log(arr1[0]) // 取值的方式
// 数组值的修改----------------------------
arr1[0] = 100 // 数组名[下标] = 值
console.log(`修改了第0个元素为 ${arr1[0]}`)
// 数组元素新增-----------------------
arr1.push(1000) // 数组名.push(值) 在数组末尾新增一个元素 1000
console.log(`新增的push方法 ${arr1} ,注意是从后面添加`)
arr1.unshift(666) // 数组名.unshift(值) 在数组开头新增一个元素 10000
console.log(`新增的unshift方法 ${arr1} ,注意是从前面添加`)
//数组筛选
// 找到数组中大于50的元素---------------------
let arr2 = [12,54,84,65,17,26,85,64,35,78,15]
let arr3 = []
for(let i=0;i<arr2.length;i++){
if(arr2[i]>50){
arr3.push(arr2[i])
}
}
console.log(`筛选出大于50的元素 ${arr3}`)
//数组删除-----------------------------------
let arr4 = [12,54,84,65,17,26,85,64,35,78,15]
arr4.pop() // 数组名.pop() 删除数组末尾的元素
console.log(`删除数组末尾的元素 ${arr4}`)
arr4.shift() // 数组名.shift() 删除数组开头的元素
console.log(`删除数组开头的元素 ${arr4}`)
arr4.splice(2,2) // 数组名.splice(起始位置,删除个数) 删除数组指定位置的元素 注意前面的2是下标奥
console.log(`删除数组指定位置的元素 ${arr4}`)
</script>
</body>
</html>
结果