javascript的这段代码看不懂,myFunction()和forEach()

zl_jyl 2019-09-26 02:58:03
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Array.forEach()</h1>
<p>为每个元素调用一次函数。</p>
<p id="demo"></p>
<script>
var txt = "";
var numbers = [45, 4, 9, 16, 25];
numbers.forEach(myFunction);
document.getElementById("demo").innerHTML = txt;
function myFunction(value, index, array) {
txt = txt + value + "<br>";
}
</script>
</body>
</html>

myFunction()和forEach()这两个地方有点蒙了。为什么myFunction()在调用的时候没有传参啊,这段代码是可以正常运行的。
...全文
110 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
虎子8 2019-09-26
  • 打赏
  • 举报
回复
基础知识看一下吧https://www.runoob.com/jsref/jsref-foreach.html,forEach需要传一个 回调函数, numbers.forEach(myFunction); 这句代码本身 不是执行myFunction 而是在forEach的内部去执行 myFunction 所以myFunction是不需传参数。
前端_小菜鸟 2019-09-26
  • 打赏
  • 举报
回复
这个就是把forEach里面的函数提取出来而已, 原本样子是

  var txt = "";
  var numbers = [45, 4, 9, 16, 25];
  document.getElementById("demo").innerHTML = txt;
  numbers.forEach(function(value, index, array) {
     txt = txt + value + "<br>";
  });
     
 
forEach默认接收3个参数, 当前元素, 当前元素的索引值, 当前元素所属的数组对象

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧