【发布时间】:2013-05-17 18:35:44
【问题描述】:
当我尝试时
[1,2,3].forEach(alert);
它会按预期为数组的每个项目打开消息框。
但是当我尝试时
[1,2,3].forEach(console.log);
我收到以下错误
Uncaught TypeError: Illegal invocation
为什么?
【问题讨论】:
-
这个问题是谷歌浏览器特有的吗?
-
[1,2,3].forEach(console.log)在 Firefox 中运行良好。 -
@MathieuImbert 我知道在 IE 中
console.log本身会返回错误,除非打开调试控制台。我怀疑这不是一个普通的功能,但我不确定。也许每个浏览器都以不同的方式实现它? -
不管怎样,您总是可以通过
console.log(1, 2, 3);看到三个独立的元素。不过,这可能不适合您的用例。