Домой /  Интернет / Методы javascript для работы со строками. Методы javascript для работы со строками Javascript перебор строки

Методы javascript для работы со строками. Методы javascript для работы со строками Javascript перебор строки

Последнее обновление: 06.04.2018

Для создания строк мы можем как напрямую присваивать переменной строку:

Let name = "Tom";

Для работы со строками предназначен объект String , поэтому также можно использовать конструктор String:

Var name = new String("Tom");

Но как правило, используется первый более краткий способ. В первом случае JavaScript при необходимости автоматически преобразует переменную примитивного типа в объект String.

Объект String имеет большой набор свойств и методов, с помощью которых мы можем манипулировать строками.

Свойство length указывает на длину строки:

Var hello = "привет мир"; console.log("В строке "" + hello + "" " + hello.length + " символов");

Метод repeat() позволяет создать строку путем многократного повторения другой строки. Количество повторов передается в качестве аргумента:

Let hello = "hello "; console.log(hello.repeat(3)); // hello hello hello

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

Шаблоны строк позволяют вставлять в строку различные значения. Для этого строки заключаются в косые кавычки:

Let name = "Tom"; let hello = `Hello ${name}`; console.log(hello); // Hello Tom let age = 23; let info = `${name} is ${age} years old`; console.log(info); // Tom is 23 years old

Для вставки значения в строку оно заключается в фигурные скобки, перед которыми ставится знак доллара.

Также вместо скалярных значений могут добавляться свойства сложных объектов или результаты выражений:

Let tom ={ name: "Tom", age: 25 } let info = `${tom.name} is ${tom.age} years old`; console.log(info); // Tom is 23 years old function sum(x, y){ return x + y; } let a = 5, b = 4; let result = `${a} + ${b} = ${sum(a, b)}`; console.log(result); // 5 + 4 = 9

Поиск в строке

Для поиска в строки некоторой подстроки используются методы indexOf() (индекс первого вхождения подстроки) и lastIndexOf() (индекс последнего вхождения подстроки). Эти методы принимают два параметра:

    Подстроку, которую надо найти

    Необязательный параметр, который указывает, с какого символа следует проводить поиск подстроки в строке

Оба этих метода возвращают индекс символа, с которого в строке начинается подстрока. Если подстрока не найдена, то возвращается число -1.

Let hello = "привет мир. пока мир"; let key = "мир"; let firstPos = hello.indexOf(key); let lastPos = hello.lastIndexOf(key); console.log("Первое вхождение: ", firstPos); // 7 console.log("Последнее вхождение: ", lastPos); // 17

Еще один метод - includes() возвращает true, если строка содержит определенную подстроку.

Let hello = "привет мир. пока мир"; console.log(hello.includes("мир")); // true console.log(hello.includes("миг")); // false

С помощью второго дополнительного параметра можно определить индекс, с которого будет начинаться поиск подстроки:

Let hello = "привет мир. пока мир"; console.log(hello.includes("мир", 5)); // true console.log(hello.includes("привет", 6)); // false

Выбор подстроки

Для того, чтобы вырезать из строки подстроку, применяются методы substr() и substring() .

Метод substring() принимает два параметра:

    индекс символа в строке, начиная с которого надо проводить обрезку строки

    индекс, до которого надо обрезать строку

let hello = "привет мир. пока мир"; let world = hello.substring(7, 10); // с 7-го по 10-й индекс console.log(world); // мир

Метод substr() также в качестве первого параметра принимает начальный индекс подстроки, а в качестве второго - длину вырезаемой подстроки:

Let hello = "привет мир. пока мир"; let bye = hello.substr(12, 4); console.log(bye); // пока

Если второй параметр не указывается, то обрезается вся остальная часть строки:

Let hello = "привет мир. пока мир"; let bye = hello.substr(12); console.log(bye); // пока мир

Управление регистром

Для изменения регистра имеются методы toLowerCase() (для перевода в нижний регистр) и toUpperCase() (для перевода в верхний регистр).

Let hello = "Привет Том"; console.log(hello.toLowerCase()); // привет том console.log(hello.toUpperCase()); // ПРИВЕТ ТОМ

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

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

Let hello = "Привет Том"; console.log(hello.charAt(2)); // и console.log(hello.charCodeAt(2)); // 1080

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

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

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

Let hello = " Привет Том "; let beforeLength = hello.length; hello = hello.trim(); let afterLength = hello.length; console.log("Длина строки до: ", beforeLength); // 15 console.log("Длина строки после: ", afterLength); // 10

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

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

Let hello = "Привет "; let world = "мир"; hello = hello.concat(world); console.log(hello); // Привет мир

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

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

Let hello = "Добрый день"; hello = hello.replace("день", "вечер"); console.log(hello); // Добрый вечер

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

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

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

Var message = "Сегодня была прекрасная погода"; var stringArray = message.split(" "); for(var str in stringArray) console.log(stringArray);

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

Сегодня была прекрасная погода

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

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

Let hello = "let me speak from my heart"; console.log(hello.startsWith("let")); // true console.log(hello.startsWith("Let")); // false console.log(hello.startsWith("lets")); // false console.log(hello.endsWith("heart")); // true console.log(hello.startsWith("bart")); // false

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

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

Let hello = "let me speak from my heart"; console.log(hello.startsWith("me", 4)); // true, "me" - 4 индекс с начала строки console.log(hello.startsWith("my", hello.length-8)); // true, "my" - 8 индекс с конца

Задача . Поиск и замена

Задача. Дана строка "aaa@bbb@ccc" . Замените все @ на "!" с помощью глобального поиска и замены.

Решение: в данном случае необходимо воспользоваться методом replace , который выполняет поиск и замену. Однако, при простом варианте использования, эта метод найдет и заменит только первое совпадение :

Var str = "aaa@bbb@ccc"; alert(str.replace("@", "!")); //получим "aaa!bbb@ccc"

Чтобы заменить все совпадения, воспользуемся глобальным поиском с помощью регулярного выражения :

Var str = "aaa@bbb@ccc"; alert(str.replace(/@/g, "!")); //получим "aaa!bbb!ccc"

Задача . Методы substr, substring, slice

Задача. Дана строка "aaa bbb ccc" . Вырежите из нее слово "bbb" тремя разными способами (через substr , substring , slice).

Решение: слово "bbb" начинается с символа номер 4 (нумерация с нуля), а заканчивается символом номер 6. Воспользуемся указанными методами:

Var str = "aaa bbb ccc"; alert(str.substr(4, 3)); //substr(откуда отрезать, сколько отрезать) alert(str.substring(4, 7)); //substring(откуда отрезать, докуда отрезать) alert(str.slice(4, 7)); //slice(откуда отрезать, докуда отрезать)

Обратите внимание на то, что в методах substring и slice второй параметр должен быть на 1 больше того символа, который мы хотим забрать (то есть, если указать число 7 - то отрезание произойдет до 6 символа включительно).

Задача . Преобразование формата даты

Задача. В переменной date лежит дата в формате "2025-12-31" "31/12/2025" .

Решение: с помощью метода split разобьем нашу строку "2025-12-31" в массив по разделителю "-" , при этом в нулевом элементе окажется год, в первом - месяц, во втором - день:

Var str = "2025-12-31"; var arr = split("-"); alert(arr);//получим массив ["2025", "12", "31"]

Теперь, обращаясь к разным элементам массива по их ключам, сформируем нужную нам строку:

Var str = "2025-12-31"; var arr = split("-"); var newStr = arr + "/" + arr + "/"+arr; alert(newStr); //получим строку "31/12/2025"

Задачи для решения

Работа с регистром символов

Дана строка "js" . Сделайте из нее строку "JS" .

Дана строка "JS" . Сделайте из нее строку "js" .

Работа с length, substr, substring, slice. Работа с indexOf

Дана строка "я учу javascript!" . Найдите количество символов в этой строке.

Дана строка "я учу javascript!" . Найдите позицию подстроки "учу" .

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

Работа с replace

Дана строка "Я-учу-javascript!" . Замените все дефисы на "!" с помощью глобального поиска и замены.

Работа с split

Дана строка "я учу javascript!" . С помощью метода split запишите каждое слово этой строки в отдельный элемент массива.

Дана строка "я учу javascript!" . С помощью метода split запишите каждый символ этой строки в отдельный элемент массива.

В переменной date лежит дата в формате "2025-12-31" . Преобразуйте эту дату в формат "31.12.2025" .

Работа с join

Дан массив ["я", "учу", "javascript", "!"] . С помощью метода join преобразуйте массив в строку "я+учу+javascript+!" .

Задачи

Преобразуйте первую букву строки в верхний регистр.

Преобразуйте первую букву каждого слова строки в верхний регистр.

Преобразуйте строку "var_test_text" в "varTestText" . Скрипт, конечно же, должен работать с любыми аналогичными строками.

Некоторые видео могут забегать вперед, тк к этому месту учебника мы прошли еще не весь ES6. Просто пропускайте такие видео, посмотрите потом.

Как семантические «каркасы» использования функций и конструкций для обработки строк представляют особенный интерес для программирования процессов обработки информации по её смысловому содержанию. На языке JavaScript функции работы со строками можно комбинировать в собственные смысловые конструкции, упрощая код и формализуя предметную область задачи.

В классическом варианте обработка информации - это, прежде всего, строковые функции. Каждая функция и конструкция языка имеет свои особенности в синтаксисе и семантике JavaScript. Методы работы со строками здесь имеют свой стиль, но в обычном применении это просто синтаксис в пределах простой семантики: поиск, замена, вставка, извлечение, контенкация, смена регистра...

Описание строковых переменных

Для объявления строки используется конструкция var. Можно сразу задать ее значение или формировать его в ходе исполнения алгоритма. Для строки можно использовать одинарные или двойные кавычки. Если в ней должна быть кавычка, её необходимо экранировать символом «\».

Строка, обозначенная требует экранирования внутренних двойных кавычек. Аналогично та, что обозначена одинарными, критична к наличию внутри одинарных кавычек.

В данном примере в строке «str_dbl» перечислены полезные специальные символы, которые можно использовать в строке. При этом сам символ «\» экранирован.

Строка - это всегда массив

Работа JavaScript со строками может выполняться множеством способов. Синтаксис языка предоставляет много вариантов. В первую очередь никогда не следует забывать, что (в контексте сделанных описаний):

  • str_isV => «V»;
  • str_chr => «"»;
  • str_dbl => «a».

То есть символы строки доступны как элементы массива, при этом каждый специальный символ - это один символ. Экранирование - это элемент синтакиса. В реальную строку никакой «экран» не помещается.

Использование функции charAt() дает аналогичный эффект:

  • str_isV.charAt(3) => «V»;
  • str_chr.charAt(1) => «"»;
  • str_dbl.charAt(5) => «a».

Программист может использовать любой вариант.

Основные строковые функции

В JavaScript выполнена несколько иначе, чем в других языках. К имени переменной (или непосредственно строки) через точку записывается имя функции. Обычно строчные функции именуют методами в стиле синтаксиса языка, но первое слово привычнее.

Самый важный метод строки (правильнее - свойство) - её длина.

  • var xStr = str_isV.length + "/" + str_chr.length + "/" + str_dbl.length.

Результат: 11/12/175 по строкам приведенного выше описания.

Самая важная строчная пара функций - разделение строки на массив элементов и слияние массива в строку:

  • split(s [, l]);
  • join(s).

В первом случае строка разбивается по символу-разделителю «s» на массив элементов, в котором количество элементов не превышает значения «l». Если количество не задано, то разбивается вся строка.

Во втором случае массив элементов сливается в одну строку через заданный разделитель.

Примечательная особенность данной пары: разбиение можно производить по одному разделителю, а слияние - по другому. В этом контексте в JavaScript работа со строками может быть «выведена за пределы» синтаксиса языка.

Классические строчные функции

Обычные функции обработки строк:

  • поиск;
  • выборка;
  • замена;
  • преобразование.

Представлены методами: indexOf(), lastIndexOf(), toLowerCase(), toUpperCase(), concan(), charCodeAt() и другими.

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

Например, использование метода concat() допустимо, но проще написать:

  • str = str1 + str2 + str3;

Применение функции charAt() тоже имеет смысл, а вот применение charCodeAt() имеет реальное практическое значение. Аналогично, для JavaScript перенос строки имеет особенный смысл: в контексте вывода на экран, например, в сообщении alert() - это «\n», в конструкции формирования контента страницы это «
». В первом случае это просто символ, а во втором - строка символов.

Строки и регулярные выражения

В JavaScript работа со строками включает в себя механизм регулярных выражений. Это позволяет выполнять внутри браузера сложные поиски, выборки и преобразования строк без обращения к серверу.

Метод match находит, а replace заменяет найденное совпадение нужным значением. Регулярные выражения реализованы в JavaScript на высоком уровне, по сути своей, являются сложными, а ввиду специфики применения переносят центр тяжести с сервера в браузер клиента.

При применении методов match, search и replace следует не только уделить должное внимание тестированию на всём спектре допустимых значений исходных параметров и искомых строк, но и оценить нагрузку на браузер.

Примеры регулярных выражений

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

Здесь представлены функции, которые проверяют, ввод содержит целое число (schInt) или число вещественное (schReal). Следующий пример показывает, насколько эффективно обрабатывать строки, проверяя их на наличие только допустимых символов: schText - только текст, schMail - правильный адрес электронной почты.

Очень важно иметь в виду, что в JavaScript символы и строки требуют повышенного внимания к локали, особенно когда нужно работать с кириллицей. Во многих случаях целесообразно указывать реальные коды символов, нежели их значения. Русских букв это касается в первую очередь.

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

Объектно-ориентированные строки

В JavaScript работа со строками представлена широким ассортиментом функций. Но это не является веским основанием для использования их в первозданном виде. Синтаксис и качество функций безупречны, но это универсальное решение.

Любое применение строчных функций предполагает обработку реального смысла, который определяется данными, областью применения, конкретным назначением алгоритма.

Идеальное решение всегда состоит в том, чтобы интерпретировать данные по их смыслу.

Представляя каждый параметр в виде объекта, можно сформулировать функции для работы с ним. Всегда речь идет об обработке символов: числа или строки - это конкретным образом организованные последовательности символов.

Есть общие алгоритмы, а есть частные. Например, фамилия или номер дома - это строки, но если в первом случае допустимы только русские буквы, то во втором случае допустимы цифры, русские буквы и могут встречаться дефисы или индексы через наклонную черту. Индексы могут быть буквенными или цифровыми. Дом может иметь корпуса.

Все ситуации не всегда можно предусмотреть. Это важный момент в программировании. Редкий алгоритм не требует доработки, а в большинстве случаев приходится систематически корректировать функционал.

Формализация обрабатываемой строчной информации в виде объекта улучшает читабельность кода, позволяет вывести его на уровень смысловой обработки. Это другая степень функциональности и значительно лучшее качество кода при большей надежности разработанного алгоритма.

Строка – это последовательность из одного или нескольких символов, которая может содержать буквы, числа и другие символы. В JavaScript это простейший неизменяемый тип данных.

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

Данный мануал научит вас создавать и просматривать вывод строк, объединять строки и хранить их в переменных. Также вы узнаете о правилах использования кавычек, апострофов и перехода к новой строке в JavaScript.

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

В JavaScript существует три способа создания троки: их можно писать в одинарных кавычках (‘), в двойных («) или в обратных кавычках (`). Хотя иногда в сценариях встречаются строки всех трех типов, в рамках одной строки нужно использовать только один тип кавычек.

Строки в одинарных и двойных кавычках – это, по сути, одно и то же. Не существует никаких соглашений касательно использования того или иного типа кавычек, но обычно в сценариях программы рекомендуется последовательно использовать какой-нибудь один тип.

"This string uses single quotes.";
"This string uses double quotes.";

Третий и новейший способ создания строки называется шаблонным литералом. Шаблонные литералы пишутся в обратных кавычках (также этот символ называется тупым ударением) и работают так же, как обычные строки с несколькими дополнительными функциями, которые мы рассмотрим в этой статье.

`This string uses backticks.`;

Простейший способ просмотреть вывод строки – ввести ее в консоль с помощью console.log().

console.log("This is a string in the console.");
This is a string in the console.

Другим простым способом запросить значение строки является всплывающее окно в браузере, которое можно вызвать с помощью alert():

alert("This is a string in an alert.");

Эта строка откроет в браузере окно уведомления с таким текстом:

This is a string in an alert.

Метод alert() используется реже, поскольку оповещения нужно постоянно закрывать.

Хранение строк в переменных

Переменные в JavaScript – это именованные контейнеры, которые хранят значения с помощью ключевых слов var, const или let. Строки можно присваивать переменным.

const newString = "This is a string assigned to a variable.";

Теперь переменная newString содержит строку, на нее можно сослаться и вывести с помощью консоли.

console.log(newString);
This is a string assigned to a variable.

Присваивая строки переменным, не нужно повторно вводить строку каждый раз, когда ее нужно вывести, что упрощает работу со строками внутри программ.

Конкатенация строк

Конкатенация строк – это процесс объединения двух или нескольких строк в одну новую строку. Конкатенация выполняется с помощью оператора +. Символ + также является оператором сложения в математических операциях.

Для примера попробуйте объединить две короткие строки:

"Sea" + "horse";
Seahorse

Конкатенация объединяет конец одной строки с началом другой строки, не вставляя пробелов. Чтобы между строками был пробел, его нужно добавить в конец первой строки.

"Sea " + "horse";
Sea horse

Конкатенация позволяет объединять строки и переменные со строковыми значениями.



const favePoem = "My favorite poem is " + poem + " by " + author ".";

Новые строки, полученные в результате конкатенации, можно использовать в программе.

Переменные с шаблонными литералами

Одной из особенностей шаблонных литералов является возможность включения в строку выражений и переменных. Вместо конкатенации можно использовать синтаксис $ {} для вставки переменной.

const poem = "The Wide Ocean";
const author = "Pablo Neruda";
const favePoem = `My favorite poem is ${poem} by ${author}.`;
My favorite poem is The Wide Ocean by Pablo Neruda.

Это синтаксис позволяет получить тот же результат. Шаблонные литералы упрощают конкатенацию строк.

Строковые литералы и строковые значения

Как вы уже, должно быть, заметили, все строки пишутся в кавычках или обратных кавычках, но при выводе строка кавычек не содержит.

"Beyond the Sea";
Beyond the Sea

Строковый литерал – это строка, как она выглядит в исходном коде, включая кавычки. Строковое значение – это строка, которая появляется в выводе (без кавычек).

В данном примере «Beyond the Sea» – это строковый литерал, а Beyond the Sea – строковое значение.

Обход кавычек и апострофов в строках

В связи с тем, что кавычки используются для обозначения строк, существуют особые правила использования апострофов и кавычек в строках. Например, апостроф в середине строки в одинарных кавычках JavaScript воспримет как закрывающую одинарную кавычку, а остальную часть предполагаемой строки попытается прочитать как код.

Рассмотрим такой пример:

const brokenString = "I"m a broken string";
console.log(brokenString);
unknown: Unexpected token (1:24)

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

Чтобы избежать подобных ошибок, можно использовать:

  • Другой синтаксис строк.
  • Escape-символы.
  • Шаблонный литерал.

Альтернативный синтаксис строк

Проще всего обойти эту проблему с помощью синтаксиса, обратного тому, который вы используете в сценарии. Например, строки с апострофами брать в двойные кавычки:

"We"re safely using an apostrophe in double quotes."

Строки с цитатами можно брать в одинарные кавычки:

"Then he said, "Hello, World!"";

Комбинируя одиночные и двойные кавычки, вы можете управлять отображением кавычек и апострофов внутри строк. Однако это повлияет на согласованность синтаксиса в файлах проекта, их будет сложно поддерживать.

Escape-символ \

С помощью обратного слеша JavaScript не будет интерпретировать кавычки как закрывающие.

Комбинация \’ всегда будет восприниматься как апостроф, а \» – как двойные кавычки, без исключений.

Это позволяет использовать апострофы в строках в одинарных кавычках, а цитаты – в строках с двойными кавычками.

"We\"re safely using an apostrophe in single quotes."
"Then he said, \"Hello, World!\"";

Этот метод выглядит немного беспорядочно. Но он необходим, если в одной строке содержатся и апостроф, и двойные кавычки.

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

Шаблонные литералы определяются обратными кавычками, поэтому и двойные кавычки, и апострофы можно спокойно использовать без каких-либо дополнительных манипуляций.

`We"re safely using apostrophes and "quotes" in a template literal.`;

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

Многострочные строки и переход к новой строке

В некоторых ситуациях есть необходимость вставить символ новой строки или разрыв строки. Escape-символы \n or \r помогут вставить новую строку в вывод кода.

const threeLines = "This is a string\nthat spans across\nthree lines.";
This is a string
that spans across
three lines.

Это разобьет вывод на несколько строк. Однако если в коде есть длинные строки, с ними будет сложно работать и читать. Чтобы отобразить одну строку в нескольких строках, используйте оператор конкатенации.

const threeLines = "This is a string\n" +
"that spans across\n" +
"three lines.";

Обойти новую строку можно также с помощью escape-символа \.

const threeLines = "This is a string\n\
that spans across\n\
three lines.";

Примечание : Этот метод использовать не рекомендуется, так как это может вызвать проблемы в некоторых браузерах.

Чтобы сделать код удобочитаемым, используйте шаблонные литералы. Это позволяет исключить конкатенацию и escape-символы.

const threeLines = `This is a string
that spans across
three lines.`;
This is a string
that spans across
three lines.

Поскольку разные базы кода могут использовать разные стандарты, важно знать все способы перехода к новой строке и создания многострочных строк.

Заключение

Теперь вы знаете основные принципы работы со строками в JavaScript,умеете создавать строки и шаблонные литералы, выполнять конкатенацию и обход и присваивать строки переменным.

Tags:

Всем привет и с наступающим новым годом. Поехали! Начнем мы с рассмотрения свойства length которое позволяет нам посчитать количество символов в строке:

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.length);

как видите в консоли выведен результат, количество символов строки(54).

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.charAt(7));

с помощью метода charAt() мы можем по заданной позиции получить символ строки, в нашем случае нам возвращается символ "и" на 7 позиции. Отмечу что отчет позиций строки начинается с нуля. К примеру если мы хотим получить первый символ строки:

Var str = "методы и свойства для работы со строками в javaScript"; str.charAt(0);

здесь нам вернется "м". Еще есть похожий метод charCodeAt() ОН РАБОТАЕТ ТОЧНО ТАКЖЕ КАК И charAt(), но возвращает уже не сам символ, а его код.

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.charCodeAt(0));

Нам вернется код символа "м" (1084).

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

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.slice(8,17));

метод slice() возвращает подстроку("свойства"), в качестве аргументов принимает два числовых значения, начальный и конечный индекс подстроки. Другой похожий метод substr():

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.substr(8,17));

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

Var str = "методы и свойства для работы со строками в javaScript"; console.log(str.toUpperCase());

метод toUpperCase() возвращает нам строку где все символы в верхнем регистре, то есть большими буквами.

Var str = "MBA"; console.log(str.toLowerCase());

метод toLowerCase() возвращает нам строке где все символы в нижнем регистре, маленькие буквы.

Для поиска подстроки в строке мы можем воспользоваться методом indexOf():

Var str = "методы и свойства для работы со строками в javaScript"; document.write(str.indexOf("работы"));

данный метод принимает в качестве аргумента подстроку которую мы хотим найти в строке и если он ее находит, то возвращается позиция с которой было найдено совпадение. Если данной подстроки не содержится в строке, то:

Var str = "методы и свойства для работы со строками в javaScript"; document.write(str.indexOf("работа"));

нам вернется значение -1. Пример:

Var str = "методы и свойства для работы со строками в javaScript", sub = "работа"; function indexOf(str, substr) { if (str.indexOf(substr) === -1) { return "Данной подстроки ""+substr+"" не содержится в строке ""+str+"""; } else{ index =str.indexOf(substr) return "Подстрока ""+substr+"" найдена в позиции "+index; } } document.write(indexOf(str,sub));

здесь мы записали небольшую функцию indexOf(str,sub) которая в качестве аргументов принимает строку(str) и подстроку(sub) и с помощью метода indexOf() проверяет наличие подстроки в строке и возвращает сообщение об результате. Отмечу что метод indexOf() возвращает позицию подстроки относительно начала строки, то есть от нулевого индекса.

Если мы захотим найти позицию подстроки относительно конца, тогда можно воспользоваться функцией lastIndexOf().

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

Var str = " методы и свойства для работы со строками в javaScript "; console.log(str);

и мы хотим убрать пробелы в начале и конце:

Console.log(str.trim());

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

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

Я поздравляю вас с наступающим новым годом, желаю счатья, здоровья, успехов, любви и конечно же удачи! Пока!