Строковые методы JavaScript
Строковые методы помогают вам работать со строками.
Строковые методы и свойства
Примитивные значения, такие как «Джон Доу», не могут иметь свойств или методов (поскольку они не являются объектами).
Но в JavaScript методы и свойства также доступны для примитивных значений, поскольку JavaScript обрабатывает примитивные значения как объекты при выполнении методов и свойств.
Длина строки JavaScript
Свойство length
возвращает длину строки:
Пример
let txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = txt.length;
Извлечение частей строки
Есть 3 способа извлечения части строки:
slice(start, end)
substring(start, end)
substr(start, length)
Срез строки JavaScript()
slice()
извлекает часть строки и возвращает извлеченную часть в новой строке.
Метод принимает 2 параметра: начальную позицию и конечную позицию (конец не включен).
В этом примере часть строки вырезается из позиции 7 в позицию 12 (13-1):
Пример
let str = "Apple, Banana, Kiwi";
let part = str.slice(7, 13);
Примечание
JavaScript считает позиции с нуля.
Первая позиция 0.
Вторая позиция 1.
Если параметр отрицательный, позиция считается с конца строки.
В этом примере часть строки вырезается из позиции -12 в позицию -6:
Пример
let str = "Apple, Banana, Kiwi";
let part = str.slice(-12, -6);
Если вы опустите второй параметр, метод вырежет остальную часть строки:
Пример
let part = str.slice(7);
или, считая с конца:
Пример
let part = str.slice(-12);
JavaScript Строка подстрока ()
substring()
похож на slice()
.
Разница заключается в том, что substring()
не может принимать отрицательные индексы.
Пример
let str = "Apple, Banana, Kiwi";
let part = str.substring(7, 13);
Если опустить второй параметр, substring()
будет порезать остальную часть строки.
Строка JavaScript substr()
substr()
похож на slice()
.
Разница в том, что второй параметр указывает длину извлеченной части.
Пример
let str = "Apple, Banana, Kiwi";
let part = str.substr(7, 6);
Если опустить второй параметр, substr()
будет порезать остальную часть строки.
Пример
let str = "Apple, Banana, Kiwi";
let part = str.substr(7);
Если первый параметр отрицательный, позиция считается с конца строки.
Пример
let str = "Apple, Banana, Kiwi";
let part = str.substr(-4);
Замена строкового содержимого
replace()
Метод заменяет указанное значение с другим значением в строке:
Пример
let text = "Please visit Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
Примечание
replace()
Метод не изменяет строку она вызвана.
replace()
Метод возвращает новую строку.
По умолчанию, replace()
метод заменяет только первый матч:
Пример
let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace("Microsoft", "W3Schools");
По умолчанию, replace()
метод чувствителен к регистру. Запись MICROSOFT (с прописной) не будет работать:
Пример
let text = "Please visit Microsoft!";
let newText = text.replace("MICROSOFT", "W3Schools");
Чтобы заменить нечувствительный к регистру, используйте регулярное выражение с /i
флагом (нечувствительным):
Пример
let text = "Please visit Microsoft!";
let newText = text.replace(/MICROSOFT/i, "W3Schools");
Примечание
Регулярные выражения пишутся без кавычек.
Чтобы заменить все совпадения, используйте регулярное выражение с /g
флагом (глобальное совпадение):
Пример
let text = "Please visit Microsoft and Microsoft!";
let newText = text.replace(/Microsoft/g, "W3Schools");
Примечание
Вы узнаете намного больше о регулярных выражениях в главе Регулярные выражения JavaScript .
Преобразование в верхний и нижний регистр
Строка преобразуется в верхний регистр с помощью toUpperCase()
:
Строка преобразуется в нижний регистр с помощью toLowerCase()
:
JavaScript Строка toUpperCase ()
Пример
let text1 = "Hello World!";
let text2 = text1.toUpperCase();
JavaScript Строка toLowerCase ()
Пример
let text1 = "Hello World!"; // String
let text2 = text1.toLowerCase(); // text2 is text1
converted to lower
Конкат строк JavaScript()
concat()
объединяет две или более строки:
Пример
let text1 = "Hello";
let text2 = "World";
let text3 = text1.concat(" ", text2);
concat()
Метод может быть использован вместо оператора плюс. Эти две линии делают то же самое:
Пример
text = "Hello" + " " + "World!";
text = "Hello".concat(" ", "World!");
Примечание
Все строковые методы возвращают новую строку. Они не изменяют исходную строку.
Официально сказал:
Строки неизменны: Строки не могут быть изменены, только заменить.
Обрезка строки JavaScript()
В trim()
метод удаляет пробельные символы с обеих сторон строки:
Пример
let text1 = " Hello World! ";
let text2 = text1.trim();
JavaScript Строка Перетяжка
В ECMAScript 2017 добавлено два метода String: padStart
и padEnd
для поддержки заполнения в начале и в конце строки.
JavaScript Строка padStart ()
Пример
let text = "5";
let padded = text.padStart(4,0);
Поддержка браузера
padStart()
является +2017 особенности ECMAScript.
Поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
padStart()
не поддерживается в Internet Explorer.
Строка JavaScript padEnd()
Пример
let text = "5";
let padded = text.padEnd(4,0);
Поддержка браузера
padEnd()
является +2017 особенности ECMAScript.
Поддерживается во всех современных браузерах:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
padEnd()
не поддерживается в Internet Explorer.
Извлечение строк символов
Есть 3 способа извлечения строки символов:
charAt(position)
charCodeAt(position)
- Доступ к собственности [ ]
Строка JavaScript charAt()
Метод charAt()
возвращает символ по указанному индексу (позиции) в строке:
Пример
let text = "HELLO WORLD";
let char = text.charAt(0);
JavaScript Строка charCodeAt ()
Метод charCodeAt()
возвращает юникод символа по указанному индексу в строке:
Метод возвращает UTF-16 код (целое число в диапазоне от 0 до 65535).
Пример
let text = "HELLO WORLD";
let char = text.charCodeAt(0);
Доступ к собственности
ECMAScript 5 (2009) позволяет доступ к свойству [] на строках:
Пример
let text = "HELLO WORLD";
let char = text[0];
Примечание
Доступ к свойству может быть немного непредсказуемым:
- Это делает строки выглядеть массивы (но они не являются)
- If no character is found, [ ] returns undefined, while charAt() returns an empty string.
- It is read only. str[0] = "A" gives no error (but does not work!)
Example
let text = "HELLO WORLD";
text[0] = "A"; // Gives no error, but does not work
Converting a String to an Array
If you want to work with a string as an array, you can convert it to an array.
JavaScript String split()
A string can be converted to an array with the split()
method:
Example
text.split(",") // Split on commas
text.split(" ") // Split on spaces
text.split("|") // Split on pipe
If the separator is omitted, the returned array will contain the whole string in index [0].
If the separator is "", the returned array will be an array of single characters:
Example
text.split("")
Complete String Reference
For a complete String reference, go to our:
Complete JavaScript String Reference.
The reference contains descriptions and examples of all string properties and methods.