目录
[一、if 与 switch 的使用对比](#一、if 与 switch 的使用对比)
[1. 相同点](#1. 相同点)
[2. 不同点](#2. 不同点)
[3. 使用建议](#3. 使用建议)
[二、for 循环:最常用的循环结构](#二、for 循环:最常用的循环结构)
[1. 基本结构](#1. 基本结构)
[2. 循环的三要素](#2. 循环的三要素)
[3. break 与 continue](#3. break 与 continue)
[4. for vs while 怎么选?](#4. for vs while 怎么选?)
[1. 示例:学习计划模拟](#1. 示例:学习计划模拟)
[2. 打印三角形](#2. 打印三角形)
[3. 九九乘法表(经典)](#3. 九九乘法表(经典))
[1. 什么是数组?](#1. 什么是数组?)
[2. 数组索引(重点)](#2. 数组索引(重点))
[3. 修改数组](#3. 修改数组)
[4. 数组可以存什么?](#4. 数组可以存什么?)
[5. length 属性](#5. length 属性)
[1. 添加元素](#1. 添加元素)
[2. 删除元素](#2. 删除元素)
[3. 任意位置操作(最强)](#3. 任意位置操作(最强))
一、if 与 switch 的使用对比
在多条件判断中,if...else 和 switch...case 都可以实现"多选一"的逻辑,但它们适用的场景有所不同。
1. 相同点
- 都可以实现多分支逻辑
- 在很多情况下可以互相替代
2. 不同点
|------|---------------|-----------------------|
| 对比点 | if...else | switch |
| 适用场景 | 范围判断(如 >、<) | 固定值匹配 |
| 执行方式 | 逐个判断条件 | 直接定位匹配值 |
| 性能 | 条件多时较慢 | 分支多时更高效 |
| 注意点 | 无特殊限制 | 必须使用 ===,注意 break |
3. 使用建议
- 条件是范围判断 → 用
if...else - 条件是固定值匹配 → 用
switch - 分支少 →
if更简单 - 分支多 →
switch更清晰
二、for 循环:最常用的循环结构
循环的本质是:让代码重复执行
1. 基本结构
javascript
for (起始值; 终止条件; 变化量) {
// 执行代码
}
例如输出 1~6 的标题:
javascript
for (let i = 1; i <= 6; i++) {
document.write(`<h${i}>标题</h${i}>`)
}
2. 循环的三要素
- 起始值(从哪里开始)
- 终止条件(什么时候结束)
- 变化量(每次怎么变)
👉 三者缺一不可,否则容易出现死循环
3. break 与 continue
javascript
// continue:跳过本次
for (let i = 1; i <= 5; i++) {
if (i === 3) continue
console.log(i)
}
// break:终止整个循环
for (let i = 1; i <= 5; i++) {
if (i === 3) break
console.log(i)
}
4. for vs while 怎么选?
- 明确循环次数 → 用
for - 不确定循环次数 → 用
while
👉 实际开发中,for 使用频率更高
三、循环嵌套(重点)
嵌套循环可以理解为:循环里面再套一层循环
执行规律:
👉 外层执行一次,内层执行一整轮
1. 示例:学习计划模拟
for (let i = 1; i < 4; i++) {
console.log(`第${i}天`)
for (let j = 1; j < 6; j++) {
console.log(`第${j}个单词`)
}
}
2. 打印三角形
for (let i = 1; i <= 5; i++) {
for (let j = 1; j <= i; j++) {
document.write('★')
}
document.write('<br>')
}
3. 九九乘法表(经典)
for (let i = 1; i <= 9; i++) {
for (let j = 1; j <= i; j++) {
document.write(`${j} x ${i} = ${j * i}`)
}
document.write('<br>')
}
👉 这是前端面试非常高频的基础题
四、数组:数据集合的核心结构
1. 什么是数组?
数组是一种按顺序存储多个数据的结构
let names = ['小明', '小红', '小刚']
2. 数组索引(重点)
-
索引从 0 开始
-
访问方式:
names[0] // 小明
names[1] // 小红
3. 修改数组
names[1] = '小丽'
4. 数组可以存什么?
👉 任意类型都可以
let arr = [
'字符串',
123,
true,
{ name: '对象' }
]
5. length 属性
let arr = ['a', 'b', 'c']
console.log(arr.length) // 3
👉 用于获取数组长度(非常重要)
五、数组常用操作方法
这些方法都会直接修改原数组
1. 添加元素
arr.push('新元素') // 末尾添加
arr.unshift('新元素') // 头部添加
2. 删除元素
arr.pop() // 删除最后一个
arr.shift() // 删除第一个
3. 任意位置操作(最强)
arr.splice(开始索引, 删除个数)
例如:
arr.splice(2, 1) // 删除第3个元素