diff options
author | Timothy Gu <timothygu99@gmail.com> | 2018-11-19 16:54:03 -0800 |
---|---|---|
committer | Rich Trott <rtrott@gmail.com> | 2018-12-01 08:53:06 -0800 |
commit | f0b6b39324815a451d322140aaaa4066eeaa74cf (patch) | |
tree | e8c812e50c304995d782387757994b02dedc37c3 /lib | |
parent | f2be20b7353baacf0094c78693b8b4ffd7e94530 (diff) | |
download | android-node-v8-f0b6b39324815a451d322140aaaa4066eeaa74cf.tar.gz android-node-v8-f0b6b39324815a451d322140aaaa4066eeaa74cf.tar.bz2 android-node-v8-f0b6b39324815a451d322140aaaa4066eeaa74cf.zip |
url: simplify native URL object construction
Co-authored-by: Joyee Cheung <joyeec9h3@gmail.com>
PR-URL: https://github.com/nodejs/node/pull/24495
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Gus Caplan <me@gus.host>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/internal/url.js | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/lib/internal/url.js b/lib/internal/url.js index 3ef8e272f9..440fc0315e 100644 --- a/lib/internal/url.js +++ b/lib/internal/url.js @@ -1369,11 +1369,6 @@ function toPathIfFileURL(fileURLOrPath) { return fileURLToPath(fileURLOrPath); } -function NativeURL(ctx) { - this[context] = ctx; -} -NativeURL.prototype = URL.prototype; - function constructUrl(flags, protocol, username, password, host, port, path, query, fragment) { var ctx = new URLContext(); @@ -1386,10 +1381,13 @@ function constructUrl(flags, protocol, username, password, ctx.query = query; ctx.fragment = fragment; ctx.host = host; - const url = new NativeURL(ctx); - url[searchParams] = new URLSearchParams(); - url[searchParams][context] = url; - initSearchParams(url[searchParams], query); + + const url = Object.create(URL.prototype); + url[context] = ctx; + const params = new URLSearchParams(); + url[searchParams] = params; + params[context] = url; + initSearchParams(params, query); return url; } setURLConstructor(constructUrl); |