Поэтому я пытаюсь вернуть строку с "% 20" между каждым пробелом, за исключением случаев, когда есть пробел в начале или конце, где он будет удален (например, "Lighthouse Labs" становится "Lighthouse%" 20Labs "). По какой-то причине мой первый оператор if не работает, и если в начале или конце есть пробел, он применяет код внутри оператора if ко ВСЕМ пробелам, и я понятия не имею, почему. Я должен быть в корне неправильно что-то здесь. Любая помощь приветствуется!
const urlEncode = function (text) {
for (let i = 0; i < text.length; i++) {
if (text.charAt(0) === " " || text.charAt(text.length - 1) === " ") {
return text.split(" ").join("");
} else {
return text.split(" ").join("%20")
}
}
return text;
};
console.log(urlEncode("Lighthouse Labs")); // Lighthouse%20Labs
console.log(urlEncode(" Lighthouse Labs ")); // LighthouseLabs
console.log(urlEncode("blue is greener than purple for sure")); //blue%20is%20greener%20than%20purple%20for%20sure
console.log(urlEncode(" blue is greener than purple for sure")); //blueisgreenerthanpurpleforsure
console.log(urlEncode("blue is greener than purple for sure "));
//blueisgreenerthanpurpleforsure