首页 > 解决方案 > 从 addEventListner 或单独声明函数

问题描述

    document.getElementById("somethings").addEventListener("click", function() {
        // code code code
    });

    // ============= or like this =============

    document.getElementById("somethings").addEventListener("click", fun);
    
    function fun(){
        // code code code
    }

作为一个新手,我问,其中一个比另一个更“正确”吗?

标签: javascriptfunctionaddeventlistener

解决方案


它归结为偏好,但声明函数将您的逻辑与事件分开是一个很好的做法,我也注意到您正在调用函数而不是传递函数的引用:

你的代码:

function fun(){
  // code code code
}

document.getElementById("somethings").addEventListener("click", fun());
    

做这个:

function fun(){
  // code code code
}

document.getElementById("somethings").addEventListener("click", fun);
    

推荐阅读