You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Web-Dev-For-Beginners/translations/zh-CN/2-js-basics/4-arrays-loops/assignment.md

115 lines
4.1 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# 数组与循环作业
## 说明
完成以下练习以练习数组和循环的使用。每个练习都建立在课程的概念基础上,并鼓励你应用不同的循环类型和数组方法。
### 练习 1数字模式生成器
创建一个程序列出1到20之间每隔3个的数字并将其打印到控制台。
**要求:**
- 使用带自定义增量的 `for` 循环
- 以用户友好的格式显示数字
- 添加描述性注释解释你的逻辑
**预期输出:**
```
3, 6, 9, 12, 15, 18
```
> **提示:** 修改你的 for 循环中的迭代表达式以跳过数字。
### 练习 2数组分析
创建一个包含至少8个不同数字的数组并编写函数分析这些数据。
**要求:**
- 创建一个名为 `numbers` 的数组包含至少8个值
- 编写一个函数 `findMaximum()` 返回最高数字
- 编写一个函数 `findMinimum()` 返回最低数字
- 编写一个函数 `calculateSum()` 返回所有数字的总和
- 测试每个函数并显示结果
**额外挑战:** 创建一个函数,找出数组中第二高的数字。
### 练习 3字符串数组处理
创建一个包含你喜欢的电影/书籍/歌曲的数组,练习不同的循环类型。
**要求:**
- 创建一个包含至少5个字符串值的数组
- 使用传统的 `for` 循环显示带编号的项目1. 项目名称)
- 使用 `for...of` 循环显示项目的大写形式
- 使用 `forEach()` 方法计算并显示字符总数
**示例输出:**
```
Traditional for loop:
1. The Matrix
2. Inception
3. Interstellar
For...of loop (uppercase):
THE MATRIX
INCEPTION
INTERSTELLAR
Character count:
Total characters across all titles: 42
```
### 练习 4数据过滤高级
创建一个处理学生对象数组的程序。
**要求:**
- 创建一个包含至少5个学生对象的数组属性包括`name`、`age`、`grade`
- 使用循环找出年龄在18岁及以上的学生
- 计算所有学生的平均成绩
- 创建一个仅包含成绩超过85分学生的新数组
**示例结构:**
```javascript
const students = [
{ name: "Alice", age: 17, grade: 92 },
{ name: "Bob", age: 18, grade: 84 },
// 添加更多学生...
];
```
## 测试你的代码
通过以下方式测试你的程序:
1. 在浏览器控制台运行每个练习
2. 验证输出是否符合预期结果
3. 使用不同的数据集进行测试
4. 检查代码能否处理边界情况(空数组、单个元素)
## 提交指南
提交时请包括:
- 每个练习的带注释 JavaScript 代码
- 程序运行的截图或文本输出
- 简短说明你为每个任务选择的循环类型及原因
## 评分标准
| 标准 | 杰出3分 | 合格2分 | 需改进1分 |
| -------- | -------------------- | ------------------- | --------------------------- |
| **功能性** | 所有练习均正确完成及附加挑战 | 所有必做练习均正确工作 | 部分练习未完成或含错误 |
| **代码质量** | 代码整洁、结构良好,变量名描述清晰 | 代码能工作但可优化 | 代码混乱或难以理解 |
| **注释** | 详尽注释解释逻辑和决策 | 有基础注释 | 注释很少或没有 |
| **循环使用** | 适当使用不同循环类型,体现理解 | 正确使用循环,但种类较少 | 循环使用不当或效率低 |
| **测试** | 有充分多样的测试证据 | 展示了基础测试 | 测试证据少 |
## 反思问题
完成练习后请思考:
1. 哪种循环类型用起来最自然,为什么?
2. 使用数组时遇到了哪些挑战?
3. 这些技能如何应用到真实的网页开发项目中?
4. 如果需要优化代码性能,你会如何做?
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**免责声明**
本文件由AI翻译服务[Co-op Translator](https://github.com/Azure/co-op-translator)进行翻译。虽然我们力求准确,但请注意自动翻译可能包含错误或不准确之处。原始语言的文档应被视为权威来源。如涉及重要信息,建议采用专业人工翻译。因使用本翻译而引起的任何误解或误释,我们不承担任何责任。
<!-- CO-OP TRANSLATOR DISCLAIMER END -->