【发布时间】:2017-12-17 16:41:45
【问题描述】:
我正在执行闭包示例,请检查下面的代码
function Counter()
{
var count=0;
var counterIncrement=function()
{
count++;
console.log(count);
}
return counterIncrement;
}
var v=Counter();
v.counterIncrement();
错误:请解释
"message": "Uncaught TypeError: v.counterIncrement is not a function",
"文件名": "https://stacksnippets.net/js",
“lineno”:26,
“colno”:3
【问题讨论】:
-
应该是闭包!
-
你应该使用
v()而不是v.counterIncrement() -
v.counterIncrement() 没有意义。参考这个 - stackoverflow.com/a/111111/6643136
-
Counter返回一个函数。它不返回具有名为counterIncrement的属性的对象。你可以打电话给v();,但v.counterIncrement是undefined。
标签: javascript jquery closures