DevGang
Авторизоваться

Тип данных String в JavaScript

String

string - примитивный тип данных, представляет собой цепочку элементов использующую кодировку UTF-16, вне зависимости от кодировки которую использует страница. Больше уроков у меня на канале

UTF-16 описывает возможность хранения символов unicode с помощью 16 или 32 битных значений. Любые текстовые данных в JavaScript являются строкой в том числе и JSON.

Можем создавать строки разными способами:

// Одинарные кавычки
const stringExample_1 = 'Hello world #1';

// Двойные кавычки
const stringExample_2 = "Hello world #2";

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

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

const stringExample_3 = 'I am \'not\' sentient';


// Аналогично и с двойными кавычками.
const stringExample_4 = "I am \"not\" sentient";

// Решаем ситуацию проще, используя один тип кавычек внутри другого.
const stringExample_5 = 'I am "not" sentient';
* * *

Обратные кавычки

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

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

const stringExample_6 = `Hello world #3`;
const stringExample_7 = `Hello world #${2+2}`;

const helloWorldNumber = 5;
const stringExample_8 = `Hello world #${helloWorldNumber}`;

Важно! То что мы передаем внутрь ${} будет преобразовано в строку.

Мы можем добиться аналогично поведения если будем использовать оператор '+' и одинарные или двойные кавычки. Это операция называет 'конкатенация строк'.

const stringExample_9 = 'Hello world #' + 6;
const stringExample_10 = "Hello world #" + 7;
* * *

Для того чтобы узнать количество символов в строке мы можем обратится к ее свойству length.

const stringExample_11 = 'Hello world #';

console.log(stringExample_11.length); // 13 символов

по его индексу. Индексирование строк начинается с 0 и заканчивается количеством ее символов минус 1.

const stringExample_12 = 'Hello world #9';

const firstChar = stringExample_12[0];  // H
const thirdChar = stringExample_12[2];  // l
const lastChar = stringExample_12[stringExample_12.length - 1];  //9
* * *

Иммутабельность строк

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

const stringExample_13 = 'Hello world #10';
// Заменяем первый символ строки.
stringExample_13[0] = 'Q';

console.log(stringExample_13);      // 'Hello world #10'

Строка не изменилась

* * *

Также в строках мы можем использовать unicode символы

console.log('\u{1F60D}')
* * *

P.S. Больше уроков у меня на канале

P.P.S. Файлы с урока

Источник:

#JavaScript #CSS #HTML
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться