简体   繁体   English

需要 javascript 的帮助。 特别是值和数字

[英]Need help for javascript. Values and numbers in particular

Basically, I am trying to make grass on javascrpit.基本上,我正在尝试在 javascrpit 上制作草。 I want to condense the code because I keep adding 10 to the number for the tag 'moveTo". Is there any way to condense this? I just want shorter code without copying and pasting the code over and over just to add 10. For example, instead of copying moveTo(0,355) and then copying and pasting the code just to change moveTo to (0,365). I want to keep it short and simple. Is there anyway I could do this?我想压缩代码,因为我一直在标记“moveTo”的数字上加 10。有什么方法可以压缩它?我只想要更短的代码,而不需要一遍又一遍地复制和粘贴代码来添加 10。例如, 而不是复制 moveTo(0,355) 然后复制和粘贴代码只是为了将 moveTo 更改为 (0,365)。我想保持简短。无论如何我可以这样做吗?

function drawBackground() {
  penColor("lightblue");
  dot(1000);
  moveTo(0, 0);
  penColor("yellow");
  dot(100);
  penUp();
  moveTo(100, 300);
}
drawBackground();
function drawGrass() {
  penWidth(7);
  turnTo(22);
  penColor("green");
  penDown();
  moveForward(25);
  turnRight(135);
  moveForward(25);
  turnLeft(135);
}

penUp();
moveTo(0, 355);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 365);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 375);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 385);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 395);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 405);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 415);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 425);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 425);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 425);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 435);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 445);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 455);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
penUp();
moveTo(0, 465);
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();
drawGrass();

Use loops to reduce duplication.使用循环来减少重复。 Loop over the number of times you want to increase the spot by 10, then loop over each of those to draw grass 17 times each (like you have in your example) and then update your counter and move to the next 10.循环你想要将点增加 10 的次数,然后循环每一个以绘制草 17 次(就像你在你的例子中那样),然后更新你的计数器并移动到下一个 10。

You could replace all your code after your function drawGrass(){} declaration with this:您可以将function drawGrass(){}声明后的所有代码替换为:

var counter = 355;
for (var i = 0; i < TEN_INTERVALS; i++){
   penUp();
   for (var x =0; x < 17; x++){
      drawGrass();
   }
   counter += 10;
   moveTo(0, counter);
}

Your code would look like this:您的代码如下所示:

function drawBackground() {
  penColor("lightblue");
  dot(1000);
  moveTo(0, 0);
  penColor("yellow");
  dot(100);
  penUp();
  moveTo(100, 300);
}
drawBackground();
function drawGrass() {
  penWidth(7);
  turnTo(22);
  penColor("green");
  penDown();
  moveForward(25);
  turnRight(135);
  moveForward(25);
  turnLeft(135);
}
var counter = 355;
for (var i = 0; i < TEN_INTERVALS; i++){
   penUp();
   for (var x =0; x < 17; x++){
      drawGrass();
   }
   counter += 10;
   moveTo(0, counter);
}

You just need to replace TEN_INTERVALS with the number of times you want to increase by 10 (in your example it would be 13 ).您只需要将TEN_INTERVALS替换为要增加 10 的次数(在您的示例中为13 )。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 需要帮助,以JavaScript循环JSON。 怪异的行为 - Need help looping JSON with JavaScript. Weird behaviours 刚刚了解了Javascript中的异常。 需要帮助更好地了解 - Just learned about exceptions in Javascript. Need help better understanding PHP和JavaScript中的变量。 我需要基本了解方面的帮助。 - Variables in php and JavaScript. I need help on basic understanding. Javascript。 扩展数字字符串 - Javascript. Expanding a string of numbers HTML,JavaScript。 正则表达式 - HTML, Javascript. RegEx on numbers 需要帮助通过javascript提交此特定表单 - Need help submitting this particular form via javascript Javascript。 帮助理解对数组中的数字进行排序时比较函数的工作原理 - Javascript. help understanding how the comparison function when sorting numbers in an array works 需要帮助验证 JavaScript 中的 PASETO 令牌有效性。 目前具有依赖于有效负载的不稳定行为 - Need help verifying PASETO-tokens validity in JavaScript. Currently have flaky behaviour dependant on payload 需要有关JavaScript函数的帮助来确定升序数字 - Need help with a JavaScript function to determine ascending numbers 需要帮助从 JavaScript 中的字符串中提取数字 - Need help extracting numbers from string in JavaScript
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM