Вставить строку в URL и перенаправить - PullRequest
0 голосов
/ 27 мая 2018

Можно ли вставить строку в URL?Допустим, я хочу www.domain.com/news вставить языковой флаг de между ком и новостями

Ответы [ 2 ]

0 голосов
/ 27 мая 2018

Если у вас есть полная строка URL-адреса, которая включает протокол, или вы знаете базовый URL-адрес или если все это основано на текущем location, вы можете использовать URL API

const url = new URL('http://www.example.com/news');
url.pathname = '/de' + url.pathname;
console.log(url.href);

// using current page `location`
const pageurl = new URL(location.href);
pageurl.pathname = '/foobar' + pageurl.pathname;
console.log(pageurl.href);
0 голосов
/ 27 мая 2018

Вы можете использовать indexOf, чтобы найти / символьную позицию, и slice с join, чтобы разбить строку в массив и восстановить ее, вставляя 2-ю строку в эту позицию:

var url = 'www.domain.com/news';
var flag= 'de/';

var position = url.indexOf('/') + 1;
url = [url.slice(0, position), flag, url.slice(position)].join('');

console.log(url);
...