扫码关注官方订阅号
这里是哪里错了呢?
业精于勤,荒于嬉;行成于思,毁于随。
1.首先你的myFunction没有被调用,所以写了和没写一样。导致total什么的都是未定义。2.你myFunction里也有错误document.write("生成"+i+"<br>");而不是document.write("生成"+i+<br>);3.不声明变量就使用是个坏习惯,全部变成全局变量,而且在严格模式下会报错
document.write("生成"+i+"<br>");
document.write("生成"+i+<br>)
以下是正确代码(按你的风格写的)
<html> <head> <title>Date</title> <meta charset="UTF-8"/> </head> <body> <script type="text/javascript"> function myFunction(){ total=0; for(i=1;i<5000;i++){ num=Math.random(); total+=num; if(i%1000==0) document.write("生成"+i+"<br>"); } } myFunction(); average=total/1000; average=Math.round(average*1000)/1000; document.write(average); </script> </body> </html>
或者
<html> <head> <title>Date</title> <meta charset="UTF-8"/> </head> <body> <script type="text/javascript"> (function myFunction(){ total=0; for(i=1;i<5000;i++){ num=Math.random(); total+=num; if(i%1000==0) document.write("生成"+i+"<br>"); } })(); average=total/1000; average=Math.round(average*1000)/1000; document.write(average); </script> </body> </html>
for的结尾括号
total没有声明。作用域
average -> undefined
total -> undefined
document.write(undefined)
前括号有两个后括号只有一个
你说呢?你函数“{}”是否正确关闭了?还有,你声明变量都是直接total=0;这样的吗?你要知道,多一个var 和没有var 那可是千差万别的差距。我没有一个一个代码的把你这段敲下来(建议,还是贴代码吧,别截图,要截图就截效果图),也可能你的代码补齐了那个"}",但是可能还会出问题
如果是非严格模式,没发现错误。代码能够跑起来就可以了。
不过,你的变量全都没有声明,就拿来赋值。这可不是一个好习惯。
如果在严格模式下,会报错。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
1.首先你的myFunction没有被调用,所以写了和没写一样。导致total什么的都是未定义。
2.你myFunction里也有错误
document.write("生成"+i+"<br>");而不是document.write("生成"+i+<br>);3.不声明变量就使用是个坏习惯,全部变成全局变量,而且在严格模式下会报错
以下是正确代码(按你的风格写的)
或者
for的结尾括号
total没有声明。
作用域
average -> undefined
total -> undefined
document.write(undefined)
前括号有两个后括号只有一个
你说呢?你函数“{}”是否正确关闭了?还有,你声明变量都是直接total=0;这样的吗?你要知道,多一个var 和没有var 那可是千差万别的差距。我没有一个一个代码的把你这段敲下来(建议,还是贴代码吧,别截图,要截图就截效果图),也可能你的代码补齐了那个"}",但是可能还会出问题
如果是非严格模式,没发现错误。代码能够跑起来就可以了。
不过,你的变量全都没有声明,就拿来赋值。这可不是一个好习惯。
如果在严格模式下,会报错。