Допустим, я использую интерфейс URL для создания нового URL.Например, вот так:
new URL('https://www.example.com/démonstration.html?query=6#bla')
Теперь мне нужно это в виде простой строки. Как мне лучше всего конвертировать его?
Примечание: Примеры здесь являются минимальными.Я, очевидно, не конвертирую (жестко закодированную) строку в объект URL и обратно в строку.Чтобы дать некоторый контекст, представьте, что я изменяю объект URL между (возможно, с помощью пользовательского ввода) и / или передаю его различным функциям или около того.В конце концов, у меня есть объект URL, и я хочу его в виде простой строки.
Я нашел следующие способы:
Как вы можете видеть, в моем примере он возвращает точното же самое.
Итак, глядя на документ , вы заметите:
href
- это "строка USVString, содержащая весь URL." toString
возвращает «USVString, содержащую весь URL. Это синоним URL.href, хотя его нельзя использовать для изменения значения."
Хорошо, яне хочу изменять это.Но действительно ли нет различий?Может быть, в отношении производительности, поддержки браузера или даже стиля кода?Я должен выбрать один, так какой из них выбрать?
¹ На самом деле Я вижу, что в таблице совместимости есть различия для этих способов преобразования .Так что я думаю, что есть также некоторые унаследованные реализации, которые обрабатывают вещи по-другому или около того.Я не могу поверить, что это истинный «синоним», и эта болтовня в поддержке браузеров, кажется, поддерживает веру.