Javascript 具有先前状态保存的函数

Javascript 具有先前状态保存的函数,javascript,Javascript,我有密码 var变量=0; 函数add(){ 返回变量+=1; } log(add()); log(add())您可以为函数创建伪静态变量: (()=>{ document.querySelector(“#test”).addEventListener(“单击”,()=>console.log(添加(1)); 函数添加(n){ add.constant=add.constant | | 0; 加常数+=n; 返回add.constant; } })() 添加1您可以为函数创建一个伪静态变量:

我有密码

var变量=0;
函数add(){
返回变量+=1;
}
log(add());

log(add())您可以为函数创建伪静态变量:

(()=>{
document.querySelector(“#test”).addEventListener(“单击”,()=>console.log(添加(1));
函数添加(n){
add.constant=add.constant | | 0;
加常数+=n;
返回add.constant;
}
})()

添加1
您可以为函数创建一个伪静态变量:

(()=>{
document.querySelector(“#test”).addEventListener(“单击”,()=>console.log(添加(1));
函数添加(n){
add.constant=add.constant | | 0;
加常数+=n;
返回add.constant;
}
})()
添加1
…仅使用一个函数

您的代码只使用一个函数(
add
)。如果您的意思是不希望它关闭
变量
,则可以将计数存储在其他位置,例如作为函数本身的属性:

函数添加(){
如果(!add.variable){
add.variable=0;
}
return++add.variable;
}
log(add());
log(add());
log(add())
…仅使用一个函数

您的代码只使用一个函数(
add
)。如果您的意思是不希望它关闭
变量
,则可以将计数存储在其他位置,例如作为函数本身的属性:

函数添加(){
如果(!add.variable){
add.variable=0;
}
return++add.variable;
}
log(add());
log(add());
log(add())也可以看到运算符(),或

var add=函数(){
var generate=函数*inc(){
变量i=0
做{
我++
产量一
}while(true)
}()
返回函数(){
返回generate.next()值
}
}()
console.log(add())
console.log(add())
console.log(add())
也可以看到操作符(),或者

var add=函数(){
var generate=函数*inc(){
变量i=0
做{
我++
产量一
}while(true)
}()
返回函数(){
返回generate.next()值
}
}()
console.log(add())
console.log(add())

console.log(add())
称为生成器。请查看“…仅使用一个函数…”但是…确实只使用一个函数(
add
)..?@T.J.Crowder我想这是翻译中丢失的“仅使用函数”。这称为生成器。请查看“…仅使用一个函数…”但是…它确实只使用一个函数(
add
)..?@T.J.Crowder我想这是翻译中丢失的“仅使用函数”。哇。。。这很有趣<代码>:D
@PraveenKumar-似乎有人否决了他们所有人(以及问题)。随机的发生了。:-)哇!这很有趣<代码>:D
@PraveenKumar-似乎有人否决了他们所有人(以及问题)。随机的发生了。:-)