@@ -157,13 +157,13 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
157157 // Copy chrome, IE, opera backslash-handling behavior.
158158 // Back slashes before the query string get converted to forward slashes
159159 // See: https://code.google.com/p/chromium/issues/detail?id=25916
160- var hasHash = false ;
161- var start = - 1 ;
162- var end = - 1 ;
163- var rest = '' ;
164- var lastPos = 0 ;
165- var i = 0 ;
166- for ( var inWs = false , split = false ; i < url . length ; ++ i ) {
160+ let hasHash = false ;
161+ let start = - 1 ;
162+ let end = - 1 ;
163+ let rest = '' ;
164+ let lastPos = 0 ;
165+ let i = 0 ;
166+ for ( let inWs = false , split = false ; i < url . length ; ++ i ) {
167167 const code = url . charCodeAt ( i ) ;
168168
169169 // Find first and last non-whitespace characters for trimming
@@ -292,9 +292,9 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
292292 // http://a@b @c / => user:a@b host:c
293293 // http://a@b ?@c => user:a host:b path:/?@c
294294
295- var hostEnd = - 1 ;
296- var atSign = - 1 ;
297- var nonHost = - 1 ;
295+ let hostEnd = - 1 ;
296+ let atSign = - 1 ;
297+ let nonHost = - 1 ;
298298 for ( i = 0 ; i < rest . length ; ++ i ) {
299299 switch ( rest . charCodeAt ( i ) ) {
300300 case CHAR_TAB :
@@ -356,11 +356,11 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
356356 if ( typeof this . hostname !== 'string' )
357357 this . hostname = '' ;
358358
359- var hostname = this . hostname ;
359+ const hostname = this . hostname ;
360360
361361 // If hostname begins with [ and ends with ]
362362 // assume that it's an IPv6 address.
363- var ipv6Hostname = hostname . charCodeAt ( 0 ) === CHAR_LEFT_SQUARE_BRACKET &&
363+ const ipv6Hostname = hostname . charCodeAt ( 0 ) === CHAR_LEFT_SQUARE_BRACKET &&
364364 hostname . charCodeAt ( hostname . length - 1 ) === CHAR_RIGHT_SQUARE_BRACKET ;
365365
366366 // validate a little.
@@ -386,8 +386,8 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
386386 this . hostname = toASCII ( this . hostname , true ) ;
387387 }
388388
389- var p = this . port ? ':' + this . port : '' ;
390- var h = this . hostname || '' ;
389+ const p = this . port ? ':' + this . port : '' ;
390+ const h = this . hostname || '' ;
391391 this . host = h + p ;
392392
393393 // strip [ and ] from the hostname
@@ -409,8 +409,8 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
409409 rest = autoEscapeStr ( rest ) ;
410410 }
411411
412- var questionIdx = - 1 ;
413- var hashIdx = - 1 ;
412+ let questionIdx = - 1 ;
413+ let hashIdx = - 1 ;
414414 for ( i = 0 ; i < rest . length ; ++ i ) {
415415 const code = rest . charCodeAt ( i ) ;
416416 if ( code === CHAR_HASH ) {
@@ -467,7 +467,7 @@ Url.prototype.parse = function parse(url, parseQueryString, slashesDenoteHost) {
467467} ;
468468
469469function getHostname ( self , rest , hostname ) {
470- for ( var i = 0 ; i < hostname . length ; ++ i ) {
470+ for ( let i = 0 ; i < hostname . length ; ++ i ) {
471471 const code = hostname . charCodeAt ( i ) ;
472472 const isValid = ( code >= CHAR_LOWERCASE_A && code <= CHAR_LOWERCASE_Z ) ||
473473 code === CHAR_DOT ||
@@ -509,11 +509,11 @@ const escapedCodes = [
509509// Also escape single quotes in case of an XSS attack.
510510// Return the escaped string.
511511function autoEscapeStr ( rest ) {
512- var escaped = '' ;
513- var lastEscapedPos = 0 ;
514- for ( var i = 0 ; i < rest . length ; ++ i ) {
512+ let escaped = '' ;
513+ let lastEscapedPos = 0 ;
514+ for ( let i = 0 ; i < rest . length ; ++ i ) {
515515 // `escaped` contains substring up to the last escaped character.
516- var escapedChar = escapedCodes [ rest . charCodeAt ( i ) ] ;
516+ const escapedChar = escapedCodes [ rest . charCodeAt ( i ) ] ;
517517 if ( escapedChar ) {
518518 // Concat if there are ordinary characters in the middle.
519519 if ( i > lastEscapedPos )
@@ -544,7 +544,7 @@ function urlFormat(urlObject, options) {
544544 throw new ERR_INVALID_ARG_TYPE ( 'urlObject' ,
545545 [ 'Object' , 'string' ] , urlObject ) ;
546546 } else if ( ! ( urlObject instanceof Url ) ) {
547- var format = urlObject [ formatSymbol ] ;
547+ const format = urlObject [ formatSymbol ] ;
548548 return format ?
549549 format . call ( urlObject , options ) :
550550 Url . prototype . format . call ( urlObject ) ;
@@ -570,17 +570,17 @@ const noEscapeAuth = [
570570] ;
571571
572572Url . prototype . format = function format ( ) {
573- var auth = this . auth || '' ;
573+ let auth = this . auth || '' ;
574574 if ( auth ) {
575575 auth = encodeStr ( auth , noEscapeAuth , hexTable ) ;
576576 auth += '@' ;
577577 }
578578
579- var protocol = this . protocol || '' ;
580- var pathname = this . pathname || '' ;
581- var hash = this . hash || '' ;
582- var host = '' ;
583- var query = '' ;
579+ let protocol = this . protocol || '' ;
580+ let pathname = this . pathname || '' ;
581+ let hash = this . hash || '' ;
582+ let host = '' ;
583+ let query = '' ;
584584
585585 if ( this . host ) {
586586 host = auth + this . host ;
@@ -600,14 +600,14 @@ Url.prototype.format = function format() {
600600 query = querystring . stringify ( this . query ) ;
601601 }
602602
603- var search = this . search || ( query && ( '?' + query ) ) || '' ;
603+ let search = this . search || ( query && ( '?' + query ) ) || '' ;
604604
605605 if ( protocol && protocol . charCodeAt ( protocol . length - 1 ) !== 58 /* : */ )
606606 protocol += ':' ;
607607
608- var newPathname = '' ;
609- var lastPos = 0 ;
610- for ( var i = 0 ; i < pathname . length ; ++ i ) {
608+ let newPathname = '' ;
609+ let lastPos = 0 ;
610+ for ( let i = 0 ; i < pathname . length ; ++ i ) {
611611 switch ( pathname . charCodeAt ( i ) ) {
612612 case CHAR_HASH :
613613 if ( i - lastPos > 0 )
@@ -671,15 +671,15 @@ function urlResolveObject(source, relative) {
671671
672672Url . prototype . resolveObject = function resolveObject ( relative ) {
673673 if ( typeof relative === 'string' ) {
674- var rel = new Url ( ) ;
674+ const rel = new Url ( ) ;
675675 rel . parse ( relative , false , true ) ;
676676 relative = rel ;
677677 }
678678
679679 const result = new Url ( ) ;
680680 const tkeys = Object . keys ( this ) ;
681- for ( var tk = 0 ; tk < tkeys . length ; tk ++ ) {
682- var tkey = tkeys [ tk ] ;
681+ for ( let tk = 0 ; tk < tkeys . length ; tk ++ ) {
682+ const tkey = tkeys [ tk ] ;
683683 result [ tkey ] = this [ tkey ] ;
684684 }
685685
@@ -696,9 +696,9 @@ Url.prototype.resolveObject = function resolveObject(relative) {
696696 // Hrefs like //foo/bar always cut to the protocol.
697697 if ( relative . slashes && ! relative . protocol ) {
698698 // Take everything except the protocol from relative
699- var rkeys = Object . keys ( relative ) ;
700- for ( var rk = 0 ; rk < rkeys . length ; rk ++ ) {
701- var rkey = rkeys [ rk ] ;
699+ const rkeys = Object . keys ( relative ) ;
700+ for ( let rk = 0 ; rk < rkeys . length ; rk ++ ) {
701+ const rkey = rkeys [ rk ] ;
702702 if ( rkey !== 'protocol' )
703703 result [ rkey ] = relative [ rkey ] ;
704704 }
@@ -723,9 +723,9 @@ Url.prototype.resolveObject = function resolveObject(relative) {
723723 // because that's known to be hostless.
724724 // anything else is assumed to be absolute.
725725 if ( ! slashedProtocol . has ( relative . protocol ) ) {
726- var keys = Object . keys ( relative ) ;
727- for ( var v = 0 ; v < keys . length ; v ++ ) {
728- var k = keys [ v ] ;
726+ const keys = Object . keys ( relative ) ;
727+ for ( let v = 0 ; v < keys . length ; v ++ ) {
728+ const k = keys [ v ] ;
729729 result [ k ] = relative [ k ] ;
730730 }
731731 result . href = result . format ( ) ;
@@ -754,8 +754,8 @@ Url.prototype.resolveObject = function resolveObject(relative) {
754754 result . port = relative . port ;
755755 // To support http.request
756756 if ( result . pathname || result . search ) {
757- var p = result . pathname || '' ;
758- var s = result . search || '' ;
757+ const p = result . pathname || '' ;
758+ const s = result . search || '' ;
759759 result . path = p + s ;
760760 }
761761 result . slashes = result . slashes || relative . slashes ;
@@ -767,10 +767,10 @@ Url.prototype.resolveObject = function resolveObject(relative) {
767767 const isRelAbs = (
768768 relative . host || ( relative . pathname && relative . pathname . charAt ( 0 ) === '/' )
769769 ) ;
770- var mustEndAbs = ( isRelAbs || isSourceAbs ||
770+ let mustEndAbs = ( isRelAbs || isSourceAbs ||
771771 ( result . host && relative . pathname ) ) ;
772772 const removeAllDots = mustEndAbs ;
773- var srcPath = ( result . pathname && result . pathname . split ( '/' ) ) || [ ] ;
773+ let srcPath = ( result . pathname && result . pathname . split ( '/' ) ) || [ ] ;
774774 const relPath = ( relative . pathname && relative . pathname . split ( '/' ) ) || [ ] ;
775775 const noLeadingSlashes = result . protocol &&
776776 ! slashedProtocol . has ( result . protocol ) ;
@@ -867,15 +867,15 @@ Url.prototype.resolveObject = function resolveObject(relative) {
867867 // If a url ENDs in . or .., then it must get a trailing slash.
868868 // however, if it ends in anything else non-slashy,
869869 // then it must NOT get a trailing slash.
870- var last = srcPath . slice ( - 1 ) [ 0 ] ;
870+ let last = srcPath . slice ( - 1 ) [ 0 ] ;
871871 const hasTrailingSlash = (
872872 ( ( result . host || relative . host || srcPath . length > 1 ) &&
873873 ( last === '.' || last === '..' ) ) || last === '' ) ;
874874
875875 // Strip single dots, resolve double dots to parent dir
876876 // if the path tries to go above the root, `up` ends up > 0
877- var up = 0 ;
878- for ( var i = srcPath . length - 1 ; i >= 0 ; i -- ) {
877+ let up = 0 ;
878+ for ( let i = srcPath . length - 1 ; i >= 0 ; i -- ) {
879879 last = srcPath [ i ] ;
880880 if ( last === '.' ) {
881881 spliceOne ( srcPath , i ) ;
@@ -947,8 +947,8 @@ Url.prototype.resolveObject = function resolveObject(relative) {
947947} ;
948948
949949Url . prototype . parseHost = function parseHost ( ) {
950- var host = this . host ;
951- var port = portPattern . exec ( host ) ;
950+ let host = this . host ;
951+ let port = portPattern . exec ( host ) ;
952952 if ( port ) {
953953 port = port [ 0 ] ;
954954 if ( port !== ':' ) {
0 commit comments