]> source.dussan.org Git - jquery.git/commitdiff
No ticket: Compress core and data modules
authorRichard Gibson <richard.gibson@gmail.com>
Sat, 28 Sep 2013 15:57:46 +0000 (11:57 -0400)
committerRichard Gibson <richard.gibson@gmail.com>
Sat, 28 Sep 2013 16:35:08 +0000 (12:35 -0400)
(cherry picked from commit b31bd4c05d87660352a3f7d3081146e332440d99)

Conflicts:

src/core.js
src/data.js

src/core.js
src/data.js

index fd367a5089981bf902310229f2ed49d89806f0e8..0377d94ec7f5849f761c45564c3e5a17f0119ab5 100644 (file)
@@ -58,13 +58,13 @@ jQuery.fn = jQuery.prototype = {
        // Get the Nth element in the matched element set OR
        // Get the whole matched element set as a clean array
        get: function( num ) {
-               return num == null ?
+               return num != null ?
 
                        // Return a 'clean' array
-                       this.toArray() :
+                       ( num < 0 ? this[ num + this.length ] : this[ num ] ) :
 
                        // Return just the object
-                       ( num < 0 ? this[ this.length + num ] : this[ num ] );
+                       slice.call( this );
        },
 
        // Take an array of elements and push it onto the stack
@@ -89,6 +89,12 @@ jQuery.fn = jQuery.prototype = {
                return jQuery.each( this, callback, args );
        },
 
+       map: function( callback ) {
+               return this.pushStack( jQuery.map(this, function( elem, i ) {
+                       return callback.call( elem, i, elem );
+               }));
+       },
+
        slice: function() {
                return this.pushStack( slice.apply( this, arguments ) );
        },
@@ -107,12 +113,6 @@ jQuery.fn = jQuery.prototype = {
                return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] );
        },
 
-       map: function( callback ) {
-               return this.pushStack( jQuery.map(this, function( elem, i ) {
-                       return callback.call( elem, i, elem );
-               }));
-       },
-
        end: function() {
                return this.prevObject || this.constructor(null);
        },
@@ -134,9 +134,10 @@ jQuery.extend = jQuery.fn.extend = function() {
        // Handle a deep copy situation
        if ( typeof target === "boolean" ) {
                deep = target;
-               target = arguments[1] || {};
+
                // skip the boolean and the target
-               i = 2;
+               target = arguments[ i ] || {};
+               i++;
        }
 
        // Handle case when target is a string or something (possible in deep copy)
@@ -145,9 +146,9 @@ jQuery.extend = jQuery.fn.extend = function() {
        }
 
        // extend jQuery itself if only one argument is passed
-       if ( length === i ) {
+       if ( i === length ) {
                target = this;
-               --i;
+               i--;
        }
 
        for ( ; i < length; i++ ) {
@@ -195,6 +196,12 @@ jQuery.extend({
        // Assume jQuery is ready without the ready module
        isReady: true,
 
+       error: function( msg ) {
+               throw new Error( msg );
+       },
+
+       noop: function() {},
+
        noConflict: function( deep ) {
                if ( window.$ === jQuery ) {
                        window.$ = _$;
@@ -227,16 +234,6 @@ jQuery.extend({
                return obj - parseFloat( obj ) >= 0;
        },
 
-       type: function( obj ) {
-               if ( obj == null ) {
-                       return String( obj );
-               }
-               // Support: Android < 4.0, iOS < 6 (functionish RegExp)
-               return typeof obj === "object" || typeof obj === "function" ?
-                       class2type[ toString.call(obj) ] || "object" :
-                       typeof obj;
-       },
-
        isPlainObject: function( obj ) {
                // Not plain objects:
                // - Any object or value whose internal [[Class]] property is not "[object Object]"
@@ -272,12 +269,16 @@ jQuery.extend({
                return true;
        },
 
-       error: function( msg ) {
-               throw new Error( msg );
+       type: function( obj ) {
+               if ( obj == null ) {
+                       return obj + "";
+               }
+               // Support: Android < 4.0, iOS < 6 (functionish RegExp)
+               return typeof obj === "object" || typeof obj === "function" ?
+                       class2type[ toString.call(obj) ] || "object" :
+                       typeof obj;
        },
 
-       noop: function() {},
-
        // Evaluates a script in a global context
        globalEval: function( code ) {
                var script,
@@ -401,23 +402,23 @@ jQuery.extend({
                return first;
        },
 
-       grep: function( elems, callback, inv ) {
-               var retVal,
-                       ret = [],
+       grep: function( elems, callback, invert ) {
+               var callbackInverse,
+                       matches = [],
                        i = 0,
-                       length = elems.length;
-               inv = !!inv;
+                       length = elems.length,
+                       callbackExpect = !invert;
 
                // Go through the array, only saving the items
                // that pass the validator function
                for ( ; i < length; i++ ) {
-                       retVal = !!callback( elems[ i ], i );
-                       if ( inv !== retVal ) {
-                               ret.push( elems[ i ] );
+                       callbackInverse = !callback( elems[ i ], i );
+                       if ( callbackInverse !== callbackExpect ) {
+                               matches.push( elems[ i ] );
                        }
                }
 
-               return ret;
+               return matches;
        },
 
        // arg is for internal usage only
@@ -434,7 +435,7 @@ jQuery.extend({
                                value = callback( elems[ i ], i, arg );
 
                                if ( value != null ) {
-                                       ret[ ret.length ] = value;
+                                       ret.push( value );
                                }
                        }
 
@@ -444,7 +445,7 @@ jQuery.extend({
                                value = callback( elems[ i ], i, arg );
 
                                if ( value != null ) {
-                                       ret[ ret.length ] = value;
+                                       ret.push( value );
                                }
                        }
                }
@@ -501,7 +502,7 @@ function isArraylike( obj ) {
        var length = obj.length,
                type = jQuery.type( obj );
 
-       if ( jQuery.isWindow( obj ) ) {
+       if ( type === "function" || jQuery.isWindow( obj ) ) {
                return false;
        }
 
@@ -509,9 +510,8 @@ function isArraylike( obj ) {
                return true;
        }
 
-       return type === "array" || type !== "function" &&
-               ( length === 0 ||
-               typeof length === "number" && length > 0 && ( length - 1 ) in obj );
+       return type === "array" || length === 0 ||
+               typeof length === "number" && length > 0 && ( length - 1 ) in obj;
 }
 
 return jQuery;
index e4d15da3c7343e23be80d674353162b16c3278e5..bdb6420738a32893a8e198ba30e7c420ba4667fa 100644 (file)
@@ -17,7 +17,7 @@ define([
        5. Avoid exposing implementation details on user objects (eg. expando properties)
        6. Provide a clear path for implementation upgrade to WeakMap in 2014
 */
-var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
+var rbrace = /(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
        rmultiDash = /([A-Z])/g;
 
 function dataAttr( elem, key, data ) {
@@ -75,10 +75,10 @@ jQuery.extend({
 
 jQuery.fn.extend({
        data: function( key, value ) {
-               var attrs, name,
+               var i, name,
+                       data = null,
                        elem = this[ 0 ],
-                       i = 0,
-                       data = null;
+                       attrs = elem && elem.attributes;
 
                // Gets all values
                if ( key === undefined ) {
@@ -86,8 +86,8 @@ jQuery.fn.extend({
                                data = data_user.get( elem );
 
                                if ( elem.nodeType === 1 && !data_priv.get( elem, "hasDataAttrs" ) ) {
-                                       attrs = elem.attributes;
-                                       for ( ; i < attrs.length; i++ ) {
+                                       i = attrs.length;
+                                       while ( i-- ) {
                                                name = attrs[ i ].name;
 
                                                if ( name.indexOf( "data-" ) === 0 ) {