您好,欢迎访问一九零五行业门户网

让js中的函数只有一次有效调用的三种常用方法

如何让js中的函数只被执行一次?我们有时候会有这种需求,即让一个函数只执行一次,第二次调用不会返回任何有价值的值,也不会报错。下面将通过三个小demo展示使用的方法,当做个人笔记。
1.通过闭包来实现。
<script>        window.onload = function () {            function once(fn) {                 var result;                          return  function() {                     if(fn) {                        result = fn.apply(this, arguments);                        fn = null;                    }                    return result;                };            }                        var callonce = once(function() {                console.log('javascript');            });                        callonce(); // javascript            callonce(); // null        }    </script>
2.第一次调用后,把func函数值空。func= function(){};
<script>        var func = function () {            alert(正常调用);            func= function(){};        }        func();        func();    </script>
3.设置一个值,通过boolean来控制后面的调用。
<script>        window.onload = function () {            var flag = true;            function once() {                if (flag) {                    alert(我被调用);                    flag = false;                } else {                    return;                }            }            once();            once();        }    </script>
更多相关教程请访问 javascript视频教程
其它类似信息

推荐信息