为什么方法括号内的函数声明会导致method.variableName()?

时间:2015-08-20 06:04:25

标签: javascript function object methods prototype

当我在javascript方法的括号中声明一个变量时,我会为函数对象提供一个有趣的补充。但是,我实际上无法在函数对象中找到结果逻辑。

[].forEach(towel = function(){console.log(42)})

console.log(towel) //function forEach.towel()

有人可以解释这个独特声明背后的逻辑吗?

注意:此评估全部在Chrome开发者控制台中完成。也许这有助于返回特定的语法?

1 个答案:

答案 0 :(得分:-1)

由于您要对尚未声明为var的变量进行赋值,因此它会泄漏到全局范围。

毛巾现在是全球范围内的变量。