Объект String в Javascript

String в Javascript

Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье вы узнали об объекте Date в Javascript. В данной статье я бы хотел рассказать об объекте String в Javascript. Ни для кого не секрет, что работа со строками занимает одну из ведущих позиций абсолютно в любом языке программирования, поэтому крайне важно уметь с ними работать. Давайте всё также, на примерах, разбираться с методами и свойствами объекта String в Javascript.
Первое свойство, которое следует изучить — это свойство length, которое возвращает длину строки:

<script>
var str = "Работаем со строками в Javascript";
document.write(str.length); //33
</script>

Метод indexOf() служит для определения вхождения подстроки, переданной в параметре метода, в строку и возвращает первую позицию вхождения. Если вхождений будет несколько, то вернется начальная позиция первого вхождения (напоминаю, что нумерация начинается с нуля). Если такой подстроки не содержится, то будет возращено -1. Также у данного метода есть один необязательный параметр, который указывает с какой позиции начинать поиск. Также подстрока чувствительна к регистру:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.indexOf("vas") + "</br>"); //2 
document.write(str.indexOf("Vas") + "</br>"); //-1 
document.write(str.indexOf("vas", 10) + "</br>"); //35 первый javascript прошли, совпадение найдено во втором слове
document.write(str.indexOf("vasek") + "</br>"); //-1 такой подстроки у нас нет
</script>

Данный метод обычно используется для поиска. Также существует метод lastIndexOf(), который возвращает номер позиции с конца, а не с начала.

Метод replace() применяется для замены подстроки на другую строку. На примере будет нагляднее:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.replace("Javascript", "php")); //php. Работа со строками в Javascript
</script>

Результат может немного озадачить. Во-первых, данный метод также чувствителен к регистру. Во-вторых, данный метод изменяет только первое вхождение. Для того, чтобы изменить все вхождения необходимо использовать регулярное выражение. Данную тему рассмотрим в одном из следующих уроков, подпишитесь на обновления, чтобы не пропустить, а пока просто приведу пример:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.replace(/Javascript/g, "php"));
</script>

Метод charAt() позволяет получить символ по его номеру в строке. По идее к элементам строки можно обращаться, как к элементам массива. Если такого индекса не существует, о вернется пустая строка. Пример:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.charAt(4) + "</br>"); //s
document.write(str[4] + "</br>"); //s
</script>

С помощью метода String.fromCharCode() можно узнать код символа и вывести его (обращаю ваше внимание, что данный метод статистический). Более подробно данный пример разбирался здесь.

Метод charCodeAt() возвращает номер символа (по кодировке Unicode) в строке. Пример:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.charCodeAt(5) + "</br>"); //99
</script>

Метод split() позволяет разбить строку на несколько строк по определенному разделителю (тип возвращаемого значения — массив). Если разделитель не указан, то возвращается исходная строка. Думаю на примере всё станет намного понятнее:

<script>
var days = "Понедельник, Вторник, Среда";
var daysList = days.split(",");
document.write(daysList[1]); //Вторник
</script>

Метод slice(begin, end) служит для того, чтобы возвращать часть строки, включая позицию begin, и не включая позицию end. Если end Не указывать, то будет взята вся строка, начиная с begin. Пример:

<script>
var str = "Javascript. Работа со строками в Javascript";
document.write(str.slice(4, 10) + "</br>"); //script
document.write(str.slice(4) + "</br>"); //script. Работа со строками в Javascript
</script>

Есть также метод substr(), который полностью аналогичен этому, за исключением того, что slice() может работать ещё с массивами, в отличие от substr().

Метод toLowerCase() используется для перевода строки в нижний регистр, а метод toUpperCase() — в верхний:

<script>
var str = "Javascript. Работа со СтрОками в Javascript";
document.write(str.toLowerCase() + "</br>");
document.write(str.toUpperCase() + "</br>");
</script>

В качестве домашнего задания необходимо написать аналог метода toUpperCase(). Создайте функцию, которая будет принимать строку из русских букв и выводить её в верхнем регистре. Здесь необходимо будет работать с кодами символов. Решение пишите в комментариях.

В данной статье вы узнали, что такое объект String в Javascript, а также как с ним работать.

На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.


Комментарии:

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *