Получение символа по индексу

Чтобы получить определенный символ в строке по индексу, можно применять методы charAt() и charCodeAt(). Оба этих метода в качестве параметра принимают индекс символа:

let hello = "Привет Том";

alert(hello.charAt(2)); // и

alert(hello.charCodeAt(2)); // 1080

Но если в качестве результата метод charAt() возвращает сам символ, то метод charCodeAt() возвращает числовой код этого символа.

Удаление пробелов

Для удаления начальных и концевых пробелов в стоке используется метод trim():

let hello = " Привет Том ";

let beforeLength = hello.length;

hello = hello.trim();

let afterLength = hello.length;

alert("Длина строки до: ", beforeLength); // 15

alert("Длина строки после: ", afterLength); // 10

Объединение строк

Метод concat() объединяет две строки:

let hello = "Привет ";

let world = "мир";

hello = hello.concat(world);

alert(hello); // Привет мир

Замена подстроки

Метод replace() заменяет первое вхождение одной подстроки на другую:

let hello = "Добрый день";

hello = hello.replace("день", "вечер");

alert(hello); // Добрый вечер

Первый параметр метода указывает, какую подстроку надо заменить, а второй параметр - на какую подстроку надо заменить.

Разделение строки

Метод split() разбивает строку на массив подстрок по определенному разделителю. В качестве разделителя используется строка, которая передается в метод:

let message = "Сегодня была прекрасная погода";

let stringArray = message.split(" ");

for(let str in stringArray)

alert(stringArray[str]);

Вывод браузера:

Сегодня

была

прекрасная

погода

Проверка начала и окончания строки

Метод startsWith() возвращает true, если строка начинается с определенной подстроки. А метод endsWith() возвращает true, если строка оканчивается на определенную подстроку.

let hello = "let me speak from my heart";

alert(hello.startsWith("let")); // true

alert(hello.startsWith("Let")); // false

alert(hello.startsWith("lets")); // false

alert(hello.endsWith("heart")); // true

alert(hello.startsWith("bart")); // false

При этом играет роль регистр символов, и из примера выше мы видим, что "let" не эквивалентно "Let".

Дополнительный второй параметр позволяет указать индекс (для startsWith - индекс с начала, а для endsWith - индекс с конца строки), относительно которого будет производиться сравнение:

let hello = "let me speak from my heart";

alert(hello.startsWith("me", 4)); // true, "me" - 4 индекс с начала строки

alert(hello.startsWith("my", hello.length-8)); // true, "my" - 8 индекс с конца

Задания.

1. Напишите скрипт, который заменяет первый символ строки str на заглавный. Например:

let name = "alex";

name = … // тут ваш код

alert(name); // выводит: "Alex"

2. Напишите скрипт, который проверяет длину строки str и, если она превосходит 20 символов, заменяет конец str на "…", так, чтобы её длина стала равна 20 символов.

Результатом функции должна быть та же строка, если усечение не требуется, либо, если необходимо, усечённая строка.

Например:

str = "Вот, что мне хотелось бы сказать на эту тему:"

str = … // тут ваш код

alert(str); // выводит: "Вот, что мне хотело…"