一个JS方法成功调用过后,阻止再次调用 应该如何做?
尽量要优雅点的方式,不要用if判断的方式,可以么?
let hasCalled = false
function func() {
if (hasCalled) return
// xxxx
hasCalled = true
}
这样?
不用if就优雅了啊?楼主这观点有问题啊,这个还真就用if最方便,定义个全局变量
例如:
var a = 1;
var b = function(){
if(a==1){
console.log("a等于1,执行");
a++;
}
}
第一次执行有打印,第二次就没有了
var onceFunc = (function(){
//函数体
console.log(true);
onceFunc = false;
});
//调用
if(onceFunc){
onceFunc();
}
这样刷新一次页面,还是在进行一次执行了,对于数据只要一次初始化,第二次不要在初始化就不灵了,应该这样。
function init(){
if(localStorage.initialized){};
.....
localStorage.initialized=1
}
init()
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答883 阅读✓ 已解决
4 回答1k 阅读✓ 已解决
6 回答942 阅读✓ 已解决