@@ -81,17 +81,18 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
81
81
var end = - 1 ;
82
82
var rest = '' ;
83
83
var lastPos = 0 ;
84
- for ( var i = 0 , inWs = false , split = false ; i < url . length ; ++ i ) {
85
- var code = url . charCodeAt ( i ) ;
84
+ var i = 0 ;
85
+ for ( var inWs = false , split = false ; i < url . length ; ++ i ) {
86
+ const code = url . charCodeAt ( i ) ;
86
87
87
88
// Find first and last non-whitespace characters for trimming
88
- var isWs = code === 32 /* */ ||
89
- code === 9 /*\t*/ ||
90
- code === 13 /*\r*/ ||
91
- code === 10 /*\n*/ ||
92
- code === 12 /*\f*/ ||
93
- code === 160 /*\u00A0*/ ||
94
- code === 65279 /*\uFEFF*/ ;
89
+ const isWs = code === 32 /* */ ||
90
+ code === 9 /*\t*/ ||
91
+ code === 13 /*\r*/ ||
92
+ code === 10 /*\n*/ ||
93
+ code === 12 /*\f*/ ||
94
+ code === 160 /*\u00A0*/ ||
95
+ code === 65279 /*\uFEFF*/ ;
95
96
if ( start === - 1 ) {
96
97
if ( isWs )
97
98
continue ;
@@ -153,7 +154,7 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
153
154
154
155
if ( ! slashesDenoteHost && ! hasHash ) {
155
156
// Try fast path regexp
156
- var simplePath = simplePathPattern . exec ( rest ) ;
157
+ const simplePath = simplePathPattern . exec ( rest ) ;
157
158
if ( simplePath ) {
158
159
this . path = rest ;
159
160
this . href = rest ;
@@ -215,7 +216,7 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
215
216
var hostEnd = - 1 ;
216
217
var atSign = - 1 ;
217
218
var nonHost = - 1 ;
218
- for ( var i = 0 ; i < rest . length ; ++ i ) {
219
+ for ( i = 0 ; i < rest . length ; ++ i ) {
219
220
switch ( rest . charCodeAt ( i ) ) {
220
221
case 9 : // '\t'
221
222
case 10 : // '\n'
@@ -255,7 +256,7 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
255
256
if ( hostEnd !== - 1 )
256
257
break ;
257
258
}
258
- var start = 0 ;
259
+ start = 0 ;
259
260
if ( atSign !== - 1 ) {
260
261
this . auth = decodeURIComponent ( rest . slice ( 0 , atSign ) ) ;
261
262
start = atSign + 1 ;
@@ -284,9 +285,8 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
284
285
hostname . charCodeAt ( hostname . length - 1 ) === 93 /*]*/ ;
285
286
286
287
// validate a little.
287
- var result ;
288
288
if ( ! ipv6Hostname ) {
289
- result = validateHostname ( this , rest , hostname ) ;
289
+ const result = validateHostname ( this , rest , hostname ) ;
290
290
if ( result !== undefined )
291
291
rest = result ;
292
292
}
@@ -326,15 +326,15 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
326
326
// First, make 100% sure that any "autoEscape" chars get
327
327
// escaped, even if encodeURIComponent doesn't think they
328
328
// need to be.
329
- result = autoEscapeStr ( rest ) ;
329
+ const result = autoEscapeStr ( rest ) ;
330
330
if ( result !== undefined )
331
331
rest = result ;
332
332
}
333
333
334
334
var questionIdx = - 1 ;
335
335
var hashIdx = - 1 ;
336
- for ( var i = 0 ; i < rest . length ; ++ i ) {
337
- var code = rest . charCodeAt ( i ) ;
336
+ for ( i = 0 ; i < rest . length ; ++ i ) {
337
+ const code = rest . charCodeAt ( i ) ;
338
338
if ( code === 35 /*#*/ ) {
339
339
this . hash = rest . slice ( i ) ;
340
340
hashIdx = i ;
@@ -378,8 +378,8 @@ Url.prototype.parse = function(url, parseQueryString, slashesDenoteHost) {
378
378
379
379
// to support http.request
380
380
if ( this . pathname || this . search ) {
381
- var p = this . pathname || '' ;
382
- var s = this . search || '' ;
381
+ const p = this . pathname || '' ;
382
+ const s = this . search || '' ;
383
383
this . path = p + s ;
384
384
}
385
385
@@ -720,17 +720,17 @@ Url.prototype.resolveObject = function(relative) {
720
720
return result ;
721
721
}
722
722
723
- const isSourceAbs = ( result . pathname && result . pathname . charAt ( 0 ) === '/' ) ;
724
- const isRelAbs = (
723
+ var isSourceAbs = ( result . pathname && result . pathname . charAt ( 0 ) === '/' ) ;
724
+ var isRelAbs = (
725
725
relative . host ||
726
726
relative . pathname && relative . pathname . charAt ( 0 ) === '/'
727
727
) ;
728
728
var mustEndAbs = ( isRelAbs || isSourceAbs ||
729
729
( result . host && relative . pathname ) ) ;
730
- const removeAllDots = mustEndAbs ;
730
+ var removeAllDots = mustEndAbs ;
731
731
var srcPath = result . pathname && result . pathname . split ( '/' ) || [ ] ;
732
- const relPath = relative . pathname && relative . pathname . split ( '/' ) || [ ] ;
733
- const psychotic = result . protocol && ! slashedProtocol [ result . protocol ] ;
732
+ var relPath = relative . pathname && relative . pathname . split ( '/' ) || [ ] ;
733
+ var psychotic = result . protocol && ! slashedProtocol [ result . protocol ] ;
734
734
735
735
// if the url is a non-slashed url, then relative
736
736
// links like ../.. should be able
0 commit comments