Par exemple, le code suivant
var box = document.getElementById("box");
box.onclick = function(){
console.log(111);
};
box = null;
Pourquoi puis-je toujours déclencher l'événement click de la boîte lorsque j'attribue la valeur de la boîte à null ? Ce que je pense, c'est que même si la boîte est affectée à null plus tard, puisque l'événement a été ajouté, le traitement de l'événement n'a rien à voir avec la boîte elle-même ? Je ne sais pas si c'est vrai. Pourquoi puis-je simplement attribuer box.onclick à null ? Onclick n'appartient-il pas à la boîte ? , j'espère que vous pourrez me donner une réponse raisonnable, merci.
La case ici n'est qu'une variable
Voici l'attribution de la référence de l'élément "box" à la box. Votre
box = null
是把null
affectation ci-dessous n'a aucun effet sur l'élément "box". Il est recommandé de lire cet articlePeut-être ce que je. dit Pas très clair, désolé.
Vous venez de donner le surnom "Xiao Ming" à une autre personne, mais les dégâts que vous avez causés au "Xiao Ming" d'origine sont toujours là...
En tant que conducteur expérimenté, je dois corriger vos étapes de blanchiment :
1 , première couverture tes péchés
2. Cela dépend de la situation si vous voulez détruire le corps ou non
En fait, box n'est qu'un "pointeur" pointant vers un élément du DOM.
Votre opération sur l'attribut box affectera l'élément DOM, mais lorsque vous lui attribuez la valeur null, vous modifiez uniquement le pointage de la boîte, mais cela ne signifie pas que l'élément DOM est effacé.