无实参调用函数时,数组元素如何传入函数参数n?
关于函数参数'n'如何获取数组元素的解答
嘿,这个问题抓得很准!我来给你把逻辑捋明白:
你看到的“仅调用函数自身”其实是个错觉——这个函数大概率是作为数组迭代方法的回调函数被使用的,比如forEach、map、filter这类数组内置方法。这些方法会帮你自动完成“给函数传数组元素”的操作,具体过程是这样的:
- 当你调用
num.forEach(你的函数)或者num.map(你的函数)时,数组的迭代方法会自动遍历num数组的每一个元素。 - 每遍历到一个元素,它就会把这个元素作为第一个参数,自动传给你定义的那个接收
n的函数。 - 举个实际代码例子就清楚了:
// 你的目标数组 const num = [10, 20, 30]; // 接收n的函数 function logNum(n) { console.log(n); } // 用forEach触发函数,不用手动传参 num.forEach(logNum); // 输出结果依次是10、20、30
额外补充个小细节:这类迭代方法除了传元素本身,还会自动把元素的索引、原数组作为第二、第三个参数传给回调函数,只是你只用到了第一个参数n,所以没感知到其他参数而已。
简单总结就是:数组的迭代方法替你完成了“逐个把数组元素塞给参数'n'”的工作,不用你手动写代码传参~
内容的提问来源于stack exchange,提问作者JaseyJS
相关产品推荐
相关产品推荐

