2016-10-25 112 views
-1

有人可以告诉为什么这不起作用? 代码中并打印“产生鱼”,但比不打印enything ...为什么这不起作用(js)

function fish(x, y, degree, genes, Snumber) { 
      this.x = x; 
      this.y = y; 
      this.dgree = degree; 
      this.energy = 50; 
      this.genes = genes; 
      this.Snumber = Snumber; 
     } 

     fishs = new Array(10); 
     Snumber = 0; 
     document.writeln("generating fish"); 
     for (i = 0; i < 10; i++) { 
      x = Math.round(Math.random * 600); 
      y = Math.round(Math.random * 600); 
      degree = Math.round(Math.random * 360); 
      genes + new Array(12); 
      for (j = 0; j < 12; j++) { 
       genes[j] = Math.random * 2 - 1; 
      } 
      fishs[i] = new fish(x, y, degree, genes, Snumber); 
      Snumber++; 
      document.writeln("genarating fish num" + i); 
     } 
+3

没有文件撰写 – epascarello

+1

它改变的Math.random() – Geeky

+0

使用我只用它来调试 –

回答

0

你有几个错误和警告的代码:

1)您不使用该var关键字,所以你会自动把变量放在全局范围内。

2)您的线路上使用+操盘的=

genes + new Array(12); 

3)使用Math.random(至极返回的随机函数,而不是一个随机数),而不是在功能3个地方。您可以使用document.write(ln),不推荐使用。使用console.log代替(它打印到控制台,打F12看看吧)