Примитивный тип string в JavaScript

В этом руководстве вы узнаете о примитивном типе string JavaScript и о том, как использовать его для определения строк.

Введение в строки JavaScript

Строки JavaScript являются примитивными значениями. Кроме того, строки неизменяемы. Это означает, что если вы измените строку, вы всегда получите новую строку. Исходная строка не меняется.

Чтобы создать литеральные строки, вы используете одинарные ( ' ) или двойные кавычки ( " ) следующим образом:

let str = 'Hi'; let greeting = "Hello";

ES6 представил литералы шаблонов, которые позволяют вам определять символы обратной кавычки (`):

let name = `John`';

Литералы шаблонов позволяют использовать одинарные и двойные кавычки внутри строки без необходимости их экранирования. Например:

let mesage = `"I'm good". She said";

Кроме того, вы можете поместить переменные и выражения в литерал шаблона. JavaScript заменит переменные их значением в строке. Это называется интерполяцией строк. Например:

let name = 'John'; let message = `Hi, I'm ${name}.`; console.log(message);

Выход:

Hi, I'm John.

В этом примере JavaScript заменяет переменную name ее значением внутри литерала шаблона.

Экранирование специальных символов

Чтобы экранировать специальные символы, вы используете обратную косую черту \. Например:

  • Разрыв строки Windows: '\r\n'
  • Разрыв строки Unix: '\n'
  • Вкладка: '\t'
  • Обратная косая черта '\'

В следующем примере символ обратной косой черты используется для экранирования одинарной кавычки в строке:

let str = 'I\'ma string!';

Получение длины строки

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

let str = "Good Morning!"; console.log(str.length); // 13

Обратите внимание, что JavaScript имеет тип String(с буквой S в верхнем регистре), который является примитивным типом-оболочкой для примитивного string типа. Таким образом, вы можете получить доступ ко всем свойствам и методам типа String из примитивной строки.

Доступ к символам

Чтобы получить доступ к символам в строке, вы используете подобную массиву нотацию [] с индексом, начинающимся с нуля. Следующий пример возвращает первый символ строки с нулевым индексом:

let str = "Hello"; console.log(str[0]); // "H"

Чтобы получить доступ к последнему символу строки, вы используете индекс length - 1 :

let str = "Hello"; console.log(str[str.length -1]); // "o"

Объединение строк с помощью оператора +

Чтобы объединить две или более строк, вы используете оператор + :

let name = 'John'; 
let str = 'Hello ' + name; console.log(str); // "Hello John"

Если вы хотите собрать строку по частям, вы можете использовать оператор += :

let className = 'btn'; 
className += ' btn-primary' className += ' none'; console.log(className);

Выход:

btn btn-primary none

Преобразование значений в строку

Чтобы преобразовать нестроковое значение в строку, используйте один из следующих способов:

  • Строка(н);
  • + н
  • n.toString()

Обратите внимание, что метод toString() не работает для undefined и null.

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

let status = false; let str = status.toString(); // "false" 
let back = Boolean(str); // true

В этом примере:

  • Сначала объявите переменную status и инициализируйте ее значением false.
  • Во-вторых, преобразуйте переменную состояния в строку с помощью метода toString().
  • В-третьих, преобразуйте строку обратно в логическое значение с помощью функции Boolean(). Функция Boolean() преобразует строку "false" в логическое значение. Результат истинен, потому что "false" — это непустая строка.

Обратите внимание, что единственная строка, для которой Boolean() возвращает false, является пустой строкой ( '' );

Сравнение строк

Чтобы сравнить две строки, вы используете операторы сравнения, такие как >, >=, <, <= и == операторы.

Операторы сравнения сравнивают строки на основе числовых значений символов. И они могут вернуть порядок строк, отличный от того, который используется в словарях. Например:

let result = 'a' < 'b'; console.log(result); // true

Однако:

let result = 'a' < 'B'; console.log(result); // false

Заключение

  • Строки JavaScript являются примитивными значениями и неизменяемы.
  • Литеральные строки заключаются в одинарные кавычки ( ' ), двойные кавычки  ( " ) или обратные кавычки (`).
  • Свойство length возвращает длину строки.
  • Используйте операторы сравнения `>, >=, <, <=, == для сравнения строк.
Рейтинг
( Пока оценок нет )
Александр Русаков / автор статьи
Программист, разработчик, 12 лет опыта работы в крупных компаниях. Быстро освоил typescript, делюсь своими знаниями на страницах этого сайта.
Загрузка ...
JavaScript и TypeScript