admin管理员组

文章数量:1328033

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.

本文标签: javascriptEvent handler bind to an anonymous function vs named functionStack Overflow