Skip to content

Commit

Permalink
Core: change jQuery.each and jQuery#each signatures
Browse files Browse the repository at this point in the history
(cherry-picked from 2380028)
Fixes gh-2090
Closes gh-2097
  • Loading branch information
markelog committed Feb 19, 2015
1 parent 0877733 commit 7cd9a36
Showing 1 changed file with 10 additions and 31 deletions.
41 changes: 10 additions & 31 deletions src/core.js
Original file line number Diff line number Diff line change
Expand Up @@ -73,10 +73,8 @@ jQuery.fn = jQuery.prototype = {
},

// Execute a callback for every element in the matched set.
// (You can seed the arguments with an array of args, but this is
// only used internally.)
each: function( callback, args ) {
return jQuery.each( this, callback, args );
each: function( callback ) {
return jQuery.each( this, callback );
},

map: function( callback ) {
Expand Down Expand Up @@ -295,40 +293,21 @@ jQuery.extend({
return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
},

// args is for internal usage only
each: function( obj, callback, args ) {
each: function( obj, callback ) {
var i = 0,
length = obj.length,
isArray = isArraylike( obj );

if ( args ) {
if ( isArray ) {
for ( ; i < length; i++ ) {
if ( callback.apply( obj[ i ], args ) === false ) {
break;
}
}
} else {
for ( i in obj ) {
if ( callback.apply( obj[ i ], args ) === false ) {
break;
}
if ( isArray ) {
for ( ; i < length; i++ ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}

// A special, fast, case for the most common use of each
} else {
if ( isArray ) {
for ( ; i < length; i++ ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}
} else {
for ( i in obj ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
for ( i in obj ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}
}
Expand Down

0 comments on commit 7cd9a36

Please sign in to comment.