只是想问一个问题:在JavaScript中将函数命名为变量有什么理由吗?
(我的意思是使用Dep
两次。只是在Vue.js中爬行并找到了这个)
var Dep = function Dep () {
this.id = uid++;
this.subs = [];
};
Run Code Online (Sandbox Code Playgroud)
变量名不是函数名;它只是一个恰好包含对该函数的引用的变量。
function
关键字后面的“Dep”是函数的名称。无论名为“Dep”的变量稍后发生什么,函数内部的“Dep”将始终是它自己的名称。
当然,在这种情况下,这根本不重要,因为该函数不引用自身。
不久前,这样做是一个好主意,以避免在浏览器控制台中报告来自“匿名函数”的错误。现代浏览器调试环境非常擅长获取合适的名称,但仍然存在无法获取适当名称的情况。