javascript - Comment implémenter des variables statiques dans js
天蓬老师
天蓬老师 2017-06-26 10:58:14
0
5
822
<button type="button" onclick="func();">按钮</button>

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

Exigence : cliquez sur la variable du bouton pour augmenter de 1. Trouvez le meilleur moyen d’y parvenir.
Pour ajouter, il existe de nombreuses façons d’y parvenir.

  1. Enregistrer directement dans des variables globales - polluant l'espace de noms global

  2. Utiliser un tableau global pour enregistrer les variables globales de l'application actuelle - n'est pas conforme à l'architecture actuelle

  3. Fermeture - ne semble pas s'adapter à la scène actuelle (utilisez onclick pour déclencher la fonction)

  4. Ancré dans l'élément HTML - encore très faible

  5. Utiliser une grande fonction anonyme pour prolonger la durée de vie d'une variable - n'est pas conforme à l'architecture actuelle

天蓬老师
天蓬老师

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

répondre à tous(5)
某草草

Qui a dit que les fermetures ne s’appliquaient pas ?

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

}());

Ou vous pouvez faire ceci :

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

Enregistré dans les attributs du nœud dom

<button data-click-number="0" type="button" id="incBtn" >按钮</button>
$("#incBtn").on('click',function(){
 var preClickNumber=$(this).attr('data-click-number') ?: 1;
 $(this).attr('data-click-number',preClickNumber++);
});
过去多啦不再A梦

js n'a pas de variables statiques. Il n'y a que des variables locales et des variables globales.

<button type="button" onclick="++i">按钮</button>

var i = 0;
大家讲道理

Vous n'utilisez pas let ?

黄舟

Les fermetures sont très populaires. Je vous suggère de lire quelques livres sur les expressions fonctionnelles de JavaScript. C'est aussi une fonctionnalité majeure de JavaScript

.
let click = (() => {
    var i = 0;
    return function() {
      i += 1;
      console.log(i)
    }
})()
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal