String JavaScript

Строки в JavaScript представляют собой последовательность символов, заключенную в одинарные ('), двойные (") или обратные (```) кавычки. Строковые литералы могут содержать любые символы Unicode, включая специальные символы, такие как переводы строки, табуляции и пробелы.

Основные свойства и методы строк

Свойства

  • length: Возвращает длину строки.

Методы

  • charAt(index): Возвращает символ по указанному индексу.
  • indexOf(substring[, startIndex]): Возвращает индекс первого вхождения подстроки в строке. Поиск начинается с указанного индекса (по умолчанию 0).
  • lastIndexOf(substring[, startIndex]): Возвращает индекс последнего вхождения подстроки в строке. Поиск идет назад от конца строки.
  • slice(startIndex[, endIndex]): Возвращает новую строку, содержащую символы строки, начиная с startIndex и заканчивая (не включая) endIndex.
  • substring(startIndex[, endIndex]): Похоже на slice, но игнорирует отрицательные индексы.
  • substr(startIndex[, length]): Возвращает подстроку, начинающуюся с startIndex длиной length символов.
  • replace(searchValue, replaceValue): Заменяет первое вхождение searchValue на replaceValue.
  • split(separator[, limit]): Разбивает строку на массив подстрок, используя указанный разделитель.
  • toLowerCase(): Преобразует строку к нижнему регистру.
  • toUpperCase(): Преобразует строку к верхнему регистру.
  • trim(): Удаляет пробельные символы в начале и конце строки.
  • includes(searchString[, position]): Проверяет, содержит ли строка указанную подстроку, начиная с указанной позиции.
  • startsWith(searchString[, position]): Проверяет, начинается ли строка с указанной подстроки, начиная с указанной позиции.
  • endsWith(searchString[, length]): Проверяет, заканчивается ли строка указанной подстрокой, проверяя последние length символов.

Примеры использования

let str = "Привет, мир!";

// Длина строки
console.log(str.length); // 13

// Символ по индексу
console.log(str.charAt(0)); // П

// Индекс первого вхождения подстроки
console.log(str.indexOf("мир")); // 8

// Извлечение подстроки
console.log(str.slice(0, 7)); // Привет,

// Замена подстроки
console.log(str.replace("мир", "вселенная")); // Привет, вселенная!

// Разбиение строки на массив
console.log(str.split(",")); // ["Привет", " мир!"]

// Преобразование регистра
console.log(str.toLowerCase()); // привет, мир!
console.log(str.toUpperCase()); // ПРИВЕТ, МИР!

// Удаление пробелов
console.log(str.trim()); // Привет, мир!

// Проверка наличия подстроки
console.log(str.includes("Привет")); // true
console.log(str.startsWith("Привет")); // true
console.log(str.endsWith("!")); // true

Шаблонные строки

Начиная с ES6, в JavaScript появились шаблонные строки, которые используют обратные кавычки (```) и поддерживают интерполяцию выражений и многострочные строки.

let name = "Иван";
let age = 30;

// Интерполяция выражений
let greeting = `Привет, ${name}! Тебе ${age} лет.`;
console.log(greeting); // Привет, Иван! Тебе 30 лет.

// Многострочная строка
let multiline = `
Это многострочная
строка.
`;
console.log(multiline);
/*
Это многострочная строка.
*/

Работа с Unicode

JavaScript использует UTF-16 для внутреннего представления строк, что означает, что некоторые символы могут занимать более одного байта. Для работы с отдельными символами Unicode можно использовать метод codePointAt и конструктор String.fromCodePoint.

let smileyFace = "\u{D83D}\u{DE03}";
console.log(smileyFace); // 😃

let codePoint = smileyFace.codePointAt(0);
console.log(codePoint); // 128515

let reconstructedSmiley = String.fromCodePoint(codePoint);
console.log(reconstructedSmiley); // 😃

Регулярные выражения

Регулярные выражения позволяют производить мощные манипуляции со строками, такие как поиск, замена и извлечение подстрок.

let text = "The quick brown fox jumps over the lazy dog.";
let pattern = /\b\w+/g; // Найдем все слова

let words = text.match(pattern);
console.log(words); // ["The", "quick", "brown", "fox", "jumps", "over", "the", "lazy", "dog"]

Итоги

Строки в JavaScript обладают богатым набором методов и свойств, позволяющих эффективно манипулировать текстовой информацией. Использование регулярных выражений и новых возможностей, таких как шаблонные строки, делает работу со строками еще более удобной и мощной.

Добавить комментарий

Войти с помощью: