javascript - 函数计数调用

标签 javascript function closures

我是 JavaScript 的初学者,所以请耐心等待 =)

我正在尝试编写一个函数来计算它被调用的次数。到目前为止,我所拥有的是一个带有显式递增计数器的函数:

var increment = function () {
    var i = 0;
    this.inc = function () {i += 1;};
    this.get = function () {return i;};
};

var ob = new increment();
ob.inc();
ob.inc();
alert(ob.get());

但我想知道如何只调用 ob();,这样该函数就可以自动增加对自身的调用。这可能吗?如果可能,怎么做?

最佳答案

var increment = function() {
    var i = 0;
    return function() { return i += 1; };
};

var ob = increment();

关于javascript - 函数计数调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7243101/

相关文章:

javascript - 为什么已经创建的元素会继承新元素的样式(在 Angular 中的 ngFor 上)?

javascript - 如何用 Javascript/jQuery 替换变量(并使用新变量刷新网站?

javascript - 在 20 个页面的网站的所有页面中包含一个通用的 html 标题(具有事件类)

c - 如何使指针变量在函数中可见

c++ - 如何放置一个以模板类的对象为参数的函数?

php - 为什么我从闭包中抛出的异常没有被捕获?

JavaScript 闭包 : Shouldn't this array not be editable via getArray?

ASP 中的 JavaScript 在 IE 中的表现与 FireFox 不同

c - 指针作为函数参数接收内存地址(C)

javascript - addEventListener 的闭包应该放在哪里?