Строки
Строка - это последовательность символов, заключенная в кавычки. Строки могут быть созданы с помощью одинарных ('
) или двойных ("
) кавычек.
let singleQuotes = "Hello, World!";
let doubleQuotes = "Hello, World!";
Шаблонные строки
Шаблонные строки (Template strings) - это строки, которые позволяют встраивать выражения внутри самих строк. Шаблонные строки создаются с помощью обратных кавычек `.
let name = "John Doe";
let greeting = `Hello, ${name}!`;
В примере выше, переменная name
вставляется в строку greeting
с помощью выражения ${name}
.
Многострочные шаблонные строки
Многострочные шаблонные строки (Multiline template strings) позволяют создавать строки, которые содержат переносы строк.
let multiline = `
Line 1
Line 2
Line 3
`;
Объект String
Объект String
предоставляет множество методов для работы со строками. String.length - свойство, которое возвращает длину строки.
let str = "Hello, World!";
console.log(str.length); // 13
Таблица методов объекта String
Метод | Описание |
---|---|
charAt(index) , charCodeAt(index) , codePointAt(index) | Возвращает символ или символьный код в указанной позиции index в строке. |
indexOf(searchString, startPosition) , lastIndexOf(searchString, startPosition) | Возвращает первую (indexOf ) или последнюю (lastIndexOf ) позицию указанной подстроки searchString в строке. Если подстрока не найдена, возвращает -1 . |
startsWith(searchString) , endsWith(searchString) , includes(searchString) | Проверяет, начинается ли (startsWith ), заканчивается ли (endsWith ) или содержит ли (includes ) строка указанную подстроку searchString . |
concat(stringToAdd) | Объединяет две строки и возвращает результат в качестве новой стр оки. |
fromCharCode(codePoint) , fromCodePoint(...codePoints) | Создаёт строку из указанной последовательности Unicode значений codePoint . Это метод класса String, а не отдельного экземпляра этого класса. |
split(separator, limit) | Разбивает строку на подстроки по разделителю separator и возвращает результат в виде массива строк. Дополнительно можно указать limit - максимальное количество элементов в массиве. |
slice(startPosition, endPosition) | Извлекает часть строки из указанного диапазона startPosition (включительно) - endPosition (не включительно) и возвращает её в качестве новой строки. |
substring(startPosition, endPosition) , substr(startPosition, length) | Возвращает указанную часть строки: substring - по начальному и конечному индексам, substr - по начальному индексу и длине. |
match(regexp) , replace(regexp, replacement) , search(regexp) | Работа с регулярными выражениями regexp : match - поиск совпадений, replace - замена совпадений, search - поиск первого совпадения. |
toLowerCase() , toUpperCase() | Возвращает строку полностью в нижнем (toLowerCase ) или верхнем (toUpperCase ) регистре. |
normalize() | Возвращает нормализованную Unicode форму строки - значения объекта String, на котором вызывается. |
repeat(count) | Возвращает строку, которая представляет собой повторение исходной строки указанное количество раз count . |
trim() | Убирает пробелы в начале и в конце строки, результат возвращается в качестве новой строки. |
Escape-последовательности
Escape-последовательности позволяют вставлять специальные символы в строки. Например, символ переноса строки \n
или символ табуляции \t
.
Таблица специальных символов
Символ | Значение |
---|---|
\b | Возврат (Backspace) |
\f | Перевод или прого н страницы (Form feed) |
\n | Перевод строки (New line) |
\r | Возврат каретки (Carriage return) |
\t | Табуляция (Tab) |
\v | Вертикальная табуляция (Vertical tab) |
\' | Апостроф или одинарная кавычка |
\" | Двойная кавычка |
\\ | Обратная косая черта (Backslash) |
\XXX | Символ в кодировке Latin-1, представленный тремя восьмеричными числами XXX от 0 до 377. (Например, \251 - символ ©) |
\xXX | Символ в кодировке Latin-1, представленный двумя шестнадцатеричными числами XX от 00 до FF. (Например, \xA9 - символ ©) |
\uXXXX | Символ в Unicode, представленный четырьмя шестнадцатеричными числами XXXX. (Например, \u00A9 - символ ©) |
\u{XXXXX} | Символ в UTF-32BE. (Например, \u{2F804} эквивалентен \uD87E\uDC04 ) |