Function count() return 1, 2, 3... 如何创建构造函数Count?
var count = new Count();
count(); // 1
count(); // 2
Function count() return 1, 2, 3... 如何创建构造函数Count?
var count = new Count();
count(); // 1
count(); // 2
function Count() {
this.x = 0;
this.count = function() {
return (this.x += 1);
};
}
counter = new Count();
counter.count(); //1
counter.count(); //2
function Count() {
var c = 1;
return function() {
return c++;
}
};
var count = new Count(); // count is now a function that adds and returns
count(); // 1
count(); // 2
构造函数大部分需要返回一个对象,因此在构造函数中返回一个数字只会返回该函数的实例,而不是数字。但是,您可以显式返回一个对象,因此您可以获得的最接近的是:
;(function() {
var count = 0;
window.Count = function() {
return new Number(count += 1);
}
})()
var a = +new Count // 1
var b = +new Count // 2
当然,你可以这样做:
window.count = (function(){
var i = 0;
return function() {
return i += 1;
}
})()
var a = count() // 1
var b = count() // 2
在大多数情况下,这更有意义。
全局声明一个变量:
var counter=0;
创建一个函数来返回值:
function count() {
return ++counter;
}