Skip to content

Commit 1413377

Browse files
xefimxtargos
authored andcommitted
url: replace var with let in lib/url.js
PR-URL: #30281 Reviewed-By: Ruben Bridgewater <[email protected]> Reviewed-By: Trivikram Kamat <[email protected]>
1 parent 9d6c293 commit 1413377

File tree

1 file changed

+50
-50
lines changed

1 file changed

+50
-50
lines changed

lib/url.js

+50-50
Original file line numberDiff line numberDiff line change
@@ -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

469469
function 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.
511511
function 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

572572
Url.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

672672
Url.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

949949
Url.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

Comments
 (0)