как поменять первый и последний символ строки js?
попытался что то сделать, спрашивал. по итогу вот что имею
let str = prompt('Введите строку');
let fir = str[0];
let last = str[str.lenght - 1];
const swap = () => {
last = str[0]
fir = str[str.lenght - 1]
}
swap()
Ответы (3 шт):
Автор решения: De.Minov
→ Ссылка
Ну во-первый, у вас очепятка не lenght, а length.
Во-вторых, вы сможете только получить символ по его индексу в строке, а вот чтобы записать туда, требуется другой подход.. (например такой - String.prototype.replaceAt())
Ну и в третьих, я бы при работе со строками лучше б регулярку заюзал, проще же:
// let str = prompt('Введите строку');
const swap = str => str.replace(/^(.)(.+)(.)$/, '$3$2$1');
console.log(swap('Hello'));
console.log(swap('World'));
console.log(swap('Какой-то другой текст'));
Автор решения: Andrei
→ Ссылка
Первое что нужно помнить, это то что строки неизменяемая структура данных. А буквы поменять можно вот так, как вариант:
let str = prompt('Введите строку');
const swap = (str) => {
let result = "";
const fir = str[0];
result = str[str.length - 1];
for (let i = 1, n = str.length - 1; i < n; ++i) {
result += str[i];
}
return result += fir;
}
console.log(swap(str));
Автор решения: Andrey Semykin
→ Ссылка
let str = 'Введите строку';
const swap = (str) => str[str.length-1] + str.slice(1, str.length-1) + str[0];
console.log(swap(str));