最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Event handler bind to an anonymous function vs named function - Stack Overflow

programmeradmin2浏览0评论

I know .on() exists with jQuery and .bind() should not be used in the future, considering that I have a version of jQuery greater than or equal to 1.7.

What I want to know is this: are there are any differences between attaching an anonymous function or named function to an event handler using .bind()?

Example:

// Anonymous function
$(".warning").bind("click", function(){
   alert("Hello");
});

// Named function
$(".warning").bind("click", foo);

function foo(){
   alert("Hello");
}

Imagine that I have 100 div's with the class warning in my page. The function .bind() will attach a new function to every handler with an anonymous function but will it be exactly the same with a named function in the very internal of JavaScript and jQuery?

Thank you.

I know .on() exists with jQuery and .bind() should not be used in the future, considering that I have a version of jQuery greater than or equal to 1.7.

What I want to know is this: are there are any differences between attaching an anonymous function or named function to an event handler using .bind()?

Example:

// Anonymous function
$(".warning").bind("click", function(){
   alert("Hello");
});

// Named function
$(".warning").bind("click", foo);

function foo(){
   alert("Hello");
}

Imagine that I have 100 div's with the class warning in my page. The function .bind() will attach a new function to every handler with an anonymous function but will it be exactly the same with a named function in the very internal of JavaScript and jQuery?

Thank you.

Share Improve this question edited Aug 3, 2016 at 18:02 The One and Only ChemistryBlob 7,88411 gold badges40 silver badges75 bronze badges asked Aug 21, 2012 at 14:07 SamuelSamuel 12.4k6 gold badges52 silver badges72 bronze badges
Add a ment  | 

1 Answer 1

Reset to default 10

There won't be any noticeable performance difference.

One main difference is that with a named function you can also selectively unbind functions and not just all functions associated with an event type.

Of course, this can also help you avoid code duplication.

发布评论

评论列表(0)

  1. 暂无评论