]> source.dussan.org Git - jquery.git/commitdiff
Core: Deprecate jQuery.trim
authorShashanka Nataraj <ShashankaNataraj@users.noreply.github.com>
Thu, 22 Aug 2019 00:06:26 +0000 (05:36 +0530)
committerMichał Gołębiowski-Owczarek <m.goleb@gmail.com>
Wed, 25 Sep 2019 23:00:55 +0000 (01:00 +0200)
Fixes gh-4363
Closes gh-4461

(cherry picked from 5ea5946094784f68437ef26d463dfcfbbbaff1f6)

src/core.js
src/deprecated.js
test/unit/basic.js
test/unit/core.js
test/unit/deprecated.js

index 0cf986a3c56959c163e80245950db4807fdbd7c0..19cacf7cd9c42cd83fc716a469f07bc5a9b0eeb5 100644 (file)
@@ -34,11 +34,7 @@ var
                // The jQuery object is actually just the init constructor 'enhanced'
                // Need init if jQuery is called (just allow error to be thrown if not included)
                return new jQuery.fn.init( selector, context );
-       },
-
-       // Support: Android <=4.0 only
-       // Make sure we trim BOM and NBSP
-       rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
+       };
 
 jQuery.fn = jQuery.prototype = {
 
@@ -275,13 +271,6 @@ jQuery.extend( {
                return obj;
        },
 
-       // Support: Android <=4.0 only
-       trim: function( text ) {
-               return text == null ?
-                       "" :
-                       ( text + "" ).replace( rtrim, "" );
-       },
-
        // results is for internal usage only
        makeArray: function( arr, results ) {
                var ret = results || [];
index c11b0d3324509759df54cac6bfe14f8ddb0a1bb1..141f9946248e27772e4010acb53666710f6e22f9 100644 (file)
@@ -12,6 +12,10 @@ define( [
 
 "use strict";
 
+// Support: Android <=4.0 only
+// Make sure we trim BOM and NBSP
+var rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
+
 jQuery.fn.extend( {
 
        bind: function( types, data, fn ) {
@@ -95,4 +99,9 @@ jQuery.isNumeric = function( obj ) {
                !isNaN( obj - parseFloat( obj ) );
 };
 
+jQuery.trim = function( text ) {
+       return text == null ?
+               "" :
+               ( text + "" ).replace( rtrim, "" );
+};
 } );
index bed27dcbabe52380811a11773e428f12d98935e0..c42ee54508e5096a0dfde27ab288e0e837722719 100644 (file)
@@ -76,12 +76,11 @@ QUnit.test( "show/hide", function( assert ) {
 }
 
 QUnit.test( "core", function( assert ) {
-       assert.expect( 18 );
+       assert.expect( 17 );
 
        var elem = jQuery( "<div></div><span></span>" );
 
        assert.strictEqual( elem.length, 2, "Correct number of elements" );
-       assert.strictEqual( jQuery.trim( "  hello   " ), "hello", "jQuery.trim" );
 
        assert.ok( jQuery.isPlainObject( { "a": 2 } ), "jQuery.isPlainObject(object)" );
        assert.ok( !jQuery.isPlainObject( "foo" ), "jQuery.isPlainObject(String)" );
index c3deef1f71c74aa4c2009617f9476fdf0a14fe03..05ea4337ef2592a5105dd7f2bde9695ba5c948f2 100644 (file)
@@ -216,28 +216,6 @@ QUnit.test( "noConflict", function( assert ) {
        window[ "jQuery" ] = jQuery = $$;
 } );
 
-QUnit.test( "trim", function( assert ) {
-       assert.expect( 13 );
-
-       var nbsp = String.fromCharCode( 160 );
-
-       assert.equal( jQuery.trim( "hello  " ), "hello", "trailing space" );
-       assert.equal( jQuery.trim( "  hello" ), "hello", "leading space" );
-       assert.equal( jQuery.trim( "  hello   " ), "hello", "space on both sides" );
-       assert.equal( jQuery.trim( "  " + nbsp + "hello  " + nbsp + " " ), "hello", "&nbsp;" );
-
-       assert.equal( jQuery.trim(), "", "Nothing in." );
-       assert.equal( jQuery.trim( undefined ), "", "Undefined" );
-       assert.equal( jQuery.trim( null ), "", "Null" );
-       assert.equal( jQuery.trim( 5 ), "5", "Number" );
-       assert.equal( jQuery.trim( false ), "false", "Boolean" );
-
-       assert.equal( jQuery.trim( " " ), "", "space should be trimmed" );
-       assert.equal( jQuery.trim( "ipad\xA0" ), "ipad", "nbsp should be trimmed" );
-       assert.equal( jQuery.trim( "\uFEFF" ), "", "zwsp should be trimmed" );
-       assert.equal( jQuery.trim( "\uFEFF \xA0! | \uFEFF" ), "! |", "leading/trailing should be trimmed" );
-} );
-
 QUnit.test( "isPlainObject", function( assert ) {
        var done = assert.async();
 
index d8b5a51814856cee3e2ead63b7b94cbbcc1ccacd..977ab35eb62129710185a3b1f5922900dcb412c7 100644 (file)
@@ -600,3 +600,25 @@ QUnit[ typeof Symbol === "function" ? "test" : "skip" ]( "isNumeric(Symbol)", fu
        assert.equal( jQuery.isNumeric( Symbol() ), false, "Symbol" );
        assert.equal( jQuery.isNumeric( Object( Symbol() ) ), false, "Symbol inside an object" );
 } );
+
+QUnit.test( "trim", function( assert ) {
+       assert.expect( 13 );
+
+       var nbsp = String.fromCharCode( 160 );
+
+       assert.equal( jQuery.trim( "hello  " ), "hello", "trailing space" );
+       assert.equal( jQuery.trim( "  hello" ), "hello", "leading space" );
+       assert.equal( jQuery.trim( "  hello   " ), "hello", "space on both sides" );
+       assert.equal( jQuery.trim( "  " + nbsp + "hello  " + nbsp + " " ), "hello", "&nbsp;" );
+
+       assert.equal( jQuery.trim(), "", "Nothing in." );
+       assert.equal( jQuery.trim( undefined ), "", "Undefined" );
+       assert.equal( jQuery.trim( null ), "", "Null" );
+       assert.equal( jQuery.trim( 5 ), "5", "Number" );
+       assert.equal( jQuery.trim( false ), "false", "Boolean" );
+
+       assert.equal( jQuery.trim( " " ), "", "space should be trimmed" );
+       assert.equal( jQuery.trim( "ipad\xA0" ), "ipad", "nbsp should be trimmed" );
+       assert.equal( jQuery.trim( "\uFEFF" ), "", "zwsp should be trimmed" );
+       assert.equal( jQuery.trim( "\uFEFF \xA0! | \uFEFF" ), "! |", "leading/trailing should be trimmed" );
+} );