From: Fomafix Date: Thu, 18 Jan 2018 15:24:43 +0000 (+0100) Subject: Use native ES5 Array prototype methods instead of jQuery X-Git-Tag: 1.31.0-rc.0~830^2 X-Git-Url: http://git.cyclocoop.org/clavettes/images/siteon3.jpg?a=commitdiff_plain;ds=sidebyside;h=ffb376bdff49d231c255ba210d1693f5545c5e15;p=lhc%2Fweb%2Fwiklou.git Use native ES5 Array prototype methods instead of jQuery Replace * $.each( array, function ( index, value ) { ... } ) by array.forEach( function ( value ) { ... } ) * $.each( array, function () { ... this ... } ) by array.forEach( function ( value ) { ... value ... } ) Also replace forEach by map, to simplify the code. Change-Id: I657c737d356cb6e310bc6351a7869a60955ebed9 --- diff --git a/resources/src/jquery/jquery.tablesorter.js b/resources/src/jquery/jquery.tablesorter.js index 6d67ade978..d712c0c4a1 100644 --- a/resources/src/jquery/jquery.tablesorter.js +++ b/resources/src/jquery/jquery.tablesorter.js @@ -761,14 +761,14 @@ /** * Converts sort objects [ { Integer: String }, ... ] to the internally used nested array - * structure [ [ Integer , Integer ], ... ] + * structure [ [ Integer, Integer ], ... ] * * @param {Array} sortObjects List of sort objects. * @return {Array} List of internal sort definitions. */ function convertSortList( sortObjects ) { var sortList = []; - $.each( sortObjects, function ( i, sortObject ) { + sortObjects.forEach( function ( sortObject ) { $.each( sortObject, function ( columnIndex, order ) { var orderIndex = ( order === 'desc' ) ? 1 : 0; sortList.push( [ parseInt( columnIndex, 10 ), orderIndex ] ); diff --git a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js index ab1ce2770e..b86f5c811d 100644 --- a/resources/src/mediawiki.action/mediawiki.action.edit.preview.js +++ b/resources/src/mediawiki.action/mediawiki.action.edit.preview.js @@ -136,7 +136,7 @@ parseRequest = api.post( postData ); parseRequest.done( function ( response ) { - var li, newList, $displaytitle, $content, $parent, $list; + var newList, $displaytitle, $content, $parent, $list; if ( response.parse.jsconfigvars ) { mw.config.set( response.parse.jsconfigvars ); } @@ -182,9 +182,8 @@ $( '.catlinks[data-mw="interface"]' ).replaceWith( $content ); } if ( response.parse.templates ) { - newList = []; - $.each( response.parse.templates, function ( i, template ) { - li = $( '
  • ' ) + newList = response.parse.templates.map( function ( template ) { + return $( '
  • ' ) .append( $( '' ) .attr( { href: mw.util.getUrl( template.title ), @@ -192,7 +191,6 @@ } ) .text( template.title ) ); - newList.push( li ); } ); $editform.find( '.templatesUsed .mw-editfooter-list' ).detach().empty().append( newList ).appendTo( '.templatesUsed' ); @@ -201,10 +199,9 @@ $( '.limitreport' ).html( response.parse.limitreporthtml ); } if ( response.parse.langlinks && mw.config.get( 'skin' ) === 'vector' ) { - newList = []; - $.each( response.parse.langlinks, function ( i, langlink ) { + newList = response.parse.langlinks.map( function ( langlink ) { var bcp47 = mw.language.bcp47( langlink.lang ); - li = $( '
  • ' ) + return $( '
  • ' ) .addClass( 'interlanguage-link interwiki-' + langlink.lang ) .append( $( '' ) .attr( { @@ -215,7 +212,6 @@ } ) .text( langlink.autonym ) ); - newList.push( li ); } ); $list = $( '#p-lang ul' ); $parent = $list.parent(); diff --git a/resources/src/mediawiki.toolbar/toolbar.js b/resources/src/mediawiki.toolbar/toolbar.js index d55ed80ca3..4707f782a9 100644 --- a/resources/src/mediawiki.toolbar/toolbar.js +++ b/resources/src/mediawiki.toolbar/toolbar.js @@ -128,8 +128,8 @@ buttons = slice.call( arguments ); } if ( isReady ) { - $.each( buttons, function () { - insertButton( this ); + buttons.forEach( function ( button ) { + insertButton( button ); } ); } else { // Push each button into the queue diff --git a/resources/src/mediawiki/api/messages.js b/resources/src/mediawiki/api/messages.js index a1a499960f..688f0b2435 100644 --- a/resources/src/mediawiki/api/messages.js +++ b/resources/src/mediawiki/api/messages.js @@ -28,7 +28,7 @@ }, options ) ).then( function ( data ) { var result = {}; - $.each( data.query.allmessages, function ( i, obj ) { + data.query.allmessages.forEach( function ( obj ) { if ( !obj.missing ) { result[ obj.name ] = obj.content; } diff --git a/resources/src/mediawiki/mediawiki.Upload.BookletLayout.js b/resources/src/mediawiki/mediawiki.Upload.BookletLayout.js index 3ade332c88..06788f58e8 100644 --- a/resources/src/mediawiki/mediawiki.Upload.BookletLayout.js +++ b/resources/src/mediawiki/mediawiki.Upload.BookletLayout.js @@ -379,8 +379,8 @@ $( '

    ' ).msg( 'filepageexists', 'File:' + warnings[ 'page-exists' ] ), { recoverable: false } ) ); - } else if ( warnings.duplicate !== undefined ) { - $.each( warnings.duplicate, function ( i, filename ) { + } else if ( Array.isArray( warnings.duplicate ) ) { + warnings.duplicate.forEach( function ( filename ) { var $a = $( '' ).text( filename ), href = mw.Title.makeTitle( mw.config.get( 'wgNamespaceIds' ).file, filename ).getUrl( {} );