javascript – So implementieren Sie statische Variablen in js
天蓬老师
天蓬老师 2017-06-26 10:58:14
0
5
730
 var i = 0; func(){ i += 1; console.log(i) }

Voraussetzung: Klicken Sie auf die Schaltfläche Variable, um sie um 1 zu erhöhen. Finden Sie den besten Weg, dies zu erreichen.
Darüber hinaus gibt es viele Möglichkeiten, dies zu erreichen.

  1. Direkt in globale Variablen speichern – dadurch wird der globale Namensraum verschmutzt

  2. Verwenden Sie ein globales Array, um die globalen Variablen der aktuellen App zu speichern – entspricht nicht der aktuellen Architektur

  3. Schließung – scheint sich nicht an die aktuelle Szene anzupassen (verwenden Sie Onclick, um die Funktion auszulösen)

  4. An HTML-Element angedockt – immer noch sehr niedrig

  5. Die Verwendung einer großen anonymen Funktion zur Verlängerung der Lebensdauer einer Variablen – entspricht nicht der aktuellen Architektur

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

Antworte allen (5)
某草草

谁说闭包不适用?

var func = (function(){ var i = 0; return function(){ i++; console.log(i); } }());

或者你可以这样:

var func = function(){ func.i++; console.log(func.i); }; func.i = 0;
    洪涛

    保存在dom节点属性中

    $("#incBtn").on('click',function(){ var preClickNumber=$(this).attr('data-click-number') ?: 1; $(this).attr('data-click-number',preClickNumber++); });
      过去多啦不再A梦

      js没有静态变量。 只有局部变量与全局变量。

       var i = 0;
        大家讲道理

        难道不是用let

          黄舟

          闭包大发好,建议题主去看看javascript的函数式的一些书籍,这也是JavaScript的一大特色

          let click = (() => { var i = 0; return function() { i += 1; console.log(i) } })()
            Neueste Downloads
            Mehr>
            Web-Effekte
            Quellcode der Website
            Website-Materialien
            Frontend-Vorlage
            Über uns Haftungsausschluss Sitemap
            Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!