JavaScript는 다양한 기능을 수행할 수 있는 강력한 프로그래밍 언어입니다. 가장 기본적인 루프 구조 중 하나는 for 루프입니다. 이를 통해 조건에 따라 코드 조각을 반복적으로 실행할 수 있으며, 이는 개체 컬렉션을 반복적으로 작동하거나 배열을 탐색해야 하는 시나리오에 매우 적합합니다.
for 루프는 루프 초기화, 루프 조건, 루프 증분의 세 부분으로 구성됩니다. 구문 구조는 다음과 같습니다.
for (循环初始化; 循环条件; 循环增量) { // 循环执行的代码 }
각 부분의 기능을 자세히 살펴보겠습니다.
다음으로 몇 가지 예시를 통해 for 루프의 사용법을 배워보겠습니다.
먼저 매우 일반적인 응용 시나리오인 배열 탐색을 살펴보겠습니다. 코드는 다음과 같습니다.
let numbers = [1, 2, 3, 4, 5]; for (let i = 0; i < numbers.length; i++) { console.log(numbers[i]); }
위 코드는 숫자
배열을 정의한 다음 for 루프를 사용하여 배열의 각 요소를 반복합니다. 루프 조건 i <number.length>는 실행될 루프의 조건을 결정하고, 증분 연산 <code>i++
은 각 루프가 증분되도록 합니다. 루프 본문에서는 console.log
함수를 사용하여 각 요소의 값을 인쇄합니다. numbers
,然后使用 for 循环来遍历数组中的每个元素。循环条件 i < numbers.length
确定了循环要执行的条件,而递增操作 i++
保证了每次循环都会自增。在循环体中,我们使用 console.log
函数来打印每个元素的值。
接下来,我们尝试使用 for 循环来构建一个乘法表。代码如下:
for (let i = 1; i <= 9; i++) { for (let j = 1; j <= i; j++) { document.write(`${j}x${i}=${i*j} `); } document.write('<br>'); }
代码中嵌套了两个 for 循环。外层循环变量 i
代表乘法表中的行数,内层循环变量 j
代表每一行中的列数。在每次内层循环结束后,我们会换行,以避免在同一行输出多个乘积。
以上代码实现了一个简单的乘法表,是初学者们很好的练习题目。
接下来,我们来看一个稍微复杂一点的例子:使用嵌套的 for 循环来对二维数组进行求和。代码如下:
let arrays = [ [1, 2, 3], [4, 5, 6], [7, 8, 9] ]; let sum = 0; for (let i = 0; i < arrays.length; i++) { for (let j = 0; j < arrays[i].length; j++) { sum += arrays[i][j]; } } console.log(sum);
以上代码定义了一个二维数组 arrays
,然后通过嵌套的 for 循环来对数组中的每个元素进行求和。外层循环变量 i
代表数组中的每一行,内层循环变量 j
代表每一行中的列数。求和操作 sum += arrays[i][j]
累加了数组中的每个元素。最后,我们打印出求和结果 console.log(sum)
。
最后,我们来看一个有趣的例子:使用 for 循环来模拟游戏中的 AI 行为。代码如下:
let enemyHealth = 100; let playerAttack = [10, 15, 20, 25, 30]; for (let i = 0; i < playerAttack.length; i++) { let damage = Math.floor(Math.random() * playerAttack[i]); enemyHealth -= damage; if (damage > 0) { console.log(`玩家使用技能${i+1},对敌人造成了${damage}点伤害!敌人还剩余${enemyHealth}点生命值。`); } else { console.log(`玩家技能${i+1}未能命中敌人!敌人还剩余${enemyHealth}点生命值。`); } if (enemyHealth <= 0) { console.log('敌人被击败了!'); break; } }
以上代码定义了一个敌人生命值和一个数组 playerAttack
,其中存储了玩家的攻击力。使用 for 循环来模拟玩家在游戏中使用不同技能攻击敌人的行为。在每次循环中,我们会生成随机数来模拟技能命中后对敌人造成的伤害,并根据情况打印出相应的信息。
如果敌人生命值被扣减到 0 或以下,游戏结束,我们使用 break
i
는 곱셈표의 행 수를 나타내고, 내부 루프 변수 j
는 각 행의 열 수를 나타냅니다. 동일한 라인에 여러 제품이 출력되는 것을 방지하기 위해 각 내부 루프 뒤에 라인을 래핑합니다. 🎜🎜위 코드는 초보자에게 좋은 연습 문제인 간단한 구구단을 구현한 것입니다. 🎜🎜3. 중첩된 for 루프는 배열 합산을 구현합니다🎜🎜다음으로 좀 더 복잡한 예를 살펴보겠습니다. 중첩된 for 루프를 사용하여 2차원 배열을 합산하는 것입니다. 코드는 다음과 같습니다. 🎜rrreee🎜위 코드는 2차원 배열 arrays
를 정의한 다음 중첩된 for 루프를 사용하여 배열의 각 요소를 합산합니다. 외부 루프 변수 i
는 배열의 각 행을 나타내고, 내부 루프 변수 j
는 각 행의 열 수를 나타냅니다. 합계 연산 sum += arrays[i][j]
는 배열의 각 요소를 누적합니다. 마지막으로 합산 결과 console.log(sum)
를 출력합니다. 🎜🎜4. 게임에서 AI 시뮬레이션🎜🎜마지막으로 for 루프를 사용하여 게임에서 AI 동작을 시뮬레이션하는 흥미로운 예를 살펴보겠습니다. 코드는 다음과 같습니다. 🎜rrreee🎜위 코드는 적의 체력 값과 플레이어의 공격력을 저장하는 playerAttack
배열을 정의합니다. for 루프를 사용하여 게임에서 적을 공격하기 위해 다양한 기술을 사용하는 플레이어의 행동을 시뮬레이션합니다. 각 사이클마다 난수를 생성하여 스킬 적중 후 적에게 입힌 피해를 시뮬레이션하고 상황에 따라 해당 정보를 인쇄합니다. 🎜🎜적의 체력이 0 이하로 줄어들면 게임이 종료되며 break
문을 사용하여 루프를 강제 종료합니다. 🎜🎜위의 예를 통해 JavaScript에서 for 루프의 유연한 적용을 볼 수 있습니다. 이는 배열을 탐색하고, 곱셈표 및 기타 일반적인 연산을 구축할 수 있을 뿐만 아니라 게임에서 AI 동작을 시뮬레이션할 수도 있습니다. for 루프를 반복적으로 연습하고 사용하면 그 신비를 더 잘 이해하고 마스터할 수 있으며 자신의 프로그래밍 여정을 위한 견고한 기반을 마련할 수 있습니다. 🎜위 내용은 JavaScript에서 for 루프를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!