Класс для работы с URL и его частями.
Требует загрузки модуля URL.
new
new y5.URL(href)
Имя аргумента | Тип | Описание |
---|---|---|
href | String | ссылка |
Пример:
var url = new y5.URL("http://www.yandex.ru/"); url.host(); // -> "www.yandex.ru" url.port(); // -> "http" url.path("/yandsearch").query({text: 'test'}); url.go(); // -> "http://www.yandex.ru/yandsearch?text=test" // пустой URL var url = new y5.URL(""); url.path("www.yandex.ru"); url.toString(); // -> "http://www.yandex.ru" (http по умолчанию) // по умолчанию var url = new y5.URL(); url.toString() == window.location.href; // -> true
addParam
addParam(name, value) -> this
Добавляет параметр к запросу URL.
Имя аргумента | Тип | Описание |
---|---|---|
name | String | название параметра |
value | String | значение параметра |
Пример:
var url = new y5.URL("http://ya.ru/?text=test"); url.addParam("stype", "www"); url.toString(); // -> "http://ya.ru/?text=test&stype=www"
addParams
addParams(params) -> this
Добавляет параметры к запросу URL.
Имя аргумента | Тип | Описание |
---|---|---|
params | Object | хэш |
Пример:
var url = new y5.URL("http://ya.ru/?text=test"); url.addParams({stype: "www"}); url.toString(); // -> "http://ya.ru/?text=test&stype=www"
clearQuery
clearQuery() -> this
Удаляет запрос из URL.
Пример:
var url = new y5.URL("http://ya.ru/?text=test&stype=www"); url.clearQuery(); url.toString(); // -> "http://ya.ru/"
clone
clone() -> y5.URL — копия объекта
Создает новый объект y5.URL из данного.
getParam
getParam(name) -> String, null — значение параметра запроса
Возвращает первый параметр из запроса URL.
Имя аргумента | Тип | Описание |
---|---|---|
name | String | имя параметра |
Пример:
var url = new y5.URL("http://ya.ru/?text=test&text=www"); // параметр присутствует в запросе url.getParam("text"); // -> "test" // параметр отсутствует в запросе url.getParam("foo"); // -> null
getParams
getParams(name) -> Array, [] — список значений параметра
Возвращает параметры из запроса URL.
Имя аргумента | Тип | Описание |
---|---|---|
name | String | имя параметра |
Пример:
var url = new y5.URL("http://ya.ru/?text=test&text=www"); // параметры присутствуют в запросе url.getParams("text"); // -> ["test", "www"] // параметры отсутствуют в запросе url.getParams("foo"); // -> []
go
go()
Прямой переход по ссылке.
hash
hash(string) -> String, this — якорь или сам объект
Установить или получить якорь URL.
Имя аргумента | Тип | Описание |
---|---|---|
string | String | новый путь |
Пример:
var url = new y5.URL("http://www.yandex.ru/#top"); url.hash(); // -> "top" url.hash("bottom"); url.toString(); // -> "http://www.yandex.ru/#bottom"
host
host(string) -> String, this — хост или сам объект
Установить или получить хост URL.
Имя аргумента | Тип | Описание |
---|---|---|
string | String | новый хост |
Пример:
var url = new y5.URL("http://www.yandex.ru/"); url.host(); // -> "www.yandex.ru" url.host("ya.ru"); url.toString(); // -> "http://ya.ru/"
path
path(string) -> String, this — путь или сам объект
Установить или получить путь URL.
Имя аргумента | Тип | Описание |
---|---|---|
string | String | новый путь |
Пример:
var url = new y5.URL("http://www.yandex.ru/"); url.path(); // -> "/" url.path("/yandsearch"); url.toString(); // -> "http://www.yandex.ru/yandsearch"
port
port(string) -> Number, this — порт или сам объект
Установить или получить порт URL.
Имя аргумента | Тип | Описание |
---|---|---|
string | Number | новый порт |
Пример:
var url = new y5.URL("http://www.yandex.ru/"); url.port(); // -> 0 url.port(8080); url.toString(); // -> "http://www.yandex.ru:8080/"
proto
proto(string) -> String, this — протокол или сам объект
Установить или получить протокол URL.
Имя аргумента | Тип | Описание |
---|---|---|
string | String | новый протокол |
Пример:
var url = new y5.URL("http://www.yandex.ru/"); url.proto(); // -> "http" url.proto("FOO"); url.toString(); // -> "FOO://www.yandex.ru/"
query
query(query) -> String, this — запрос или сам объект
Установить или получить запрос URL.
Имя аргумента | Тип | Описание |
---|---|---|
query | Object, String | новые параметры запроса |
Пример:
var url = new y5.URL("http://www.yandex.ru/yandsearch?text=test"); url.query(); // -> "text=test" url.query({foo: "bar"}); url.toString(); // -> "http://www.yandex.ru/yandsearch?foo=bar" url.query("foo=bar"); url.toString(); // -> "http://www.yandex.ru/yandsearch?foo=bar"
queryKeys
queryKeys() -> Array — список ключей
Возвращает список имен параметров запроса.
Пример:
var url = new y5.URL("http://www.yandex.ru/yandsearch?text=test&foo=bar"); url.queryKeys(); // -> ['text', 'foo']
removeParams
removeParams(params) -> this
Удаляет параметр из запроса URL.
Имя аргумента | Тип | Описание |
---|---|---|
params | Array | удаляемый параметр запроса |
Пример:
var url = new y5.URL("http://ya.ru/?text=test&stype=www"); url.removeParam(["stype"]); url.toString(); // -> "http://ya.ru/?text=test"
replaceParams
replaceParams(params) -> this
Заменяет параметр в запросе URL.
Имя аргумента | Тип | Описание |
---|---|---|
params | Object | заменяемый параметр запроса |
Пример:
var url = new y5.URL("http://ya.ru/?text=test&stype=www"); url.replaceParams({stype: "images"}); url.toString(); // -> "http://ya.ru/?text=test&stype=images"
toString
toString() -> String — ссылка
Получить ссылку в виде строки.
y5.Url
y5.Url(href)
Сокращенная функция для работы с URL.
Имя аргумента | Тип | Описание |
---|---|---|
href | String | ссылка |
Пример:
y5.Url("http://www.yandex.ru/").path("/yandsearch").addParams({text: "test"}).go(); // -> "http://www.yandex.ru/yandsearch?text=test"