循环详解

循环详解

> LeekScript 教程

刚开始写代码时,你迟早会碰到需要把同一段指令重复执行好几次的情况:

var enemy = getNearestEnemy();

useWeapon(enemy); useWeapon(enemy); useWeapon(enemy); useWeapon(enemy);

只开三四枪的时候,这样写还不算麻烦;但等你想写更复杂的算法时,可能需要把指令重复几十次,甚至重复的次数事先还定不下来,那就没法这么写了。 这时候就该循环上场了。 循环是一种代码结构,它能把一组指令按需要重复任意多次。循环里的代码每重复执行一次,就叫做一次迭代。

var enemy = getNearestEnemy();

for(var i = 0 ; i 5) { moveTowardCell(enemyCell, 1); }

找出距离自己的韭葱不超过 3 格的所有格子:

var cell = getCell(); var x0 = getCellX(cell); var y0 = getCellY(cell);

var cells = [];

for(var x = -3 ; x <= 3 ; x ++) { for(var y = -3 ; y <= 3 ; y ++) { if(abs(x) + abs(y) <= 3) { var cell = getCellFromXY(x+x0, y+y0); if(cell != null) { push(cells, cell); } } } }