Длина строки в JavaScript

Длина строки - это количество символов в строке. В JavaScript ее можно узнать через свойство length.

let word = 'JavaScript';

console.log(word.length);

Результат:

10

В строке ‘JavaScript’ 10 символов, поэтому length вернул число 10.

Что такое длина строки

Строка состоит из отдельных символов: букв, цифр, пробелов, знаков препинания и других символов.

let login = 'admin';

console.log(login.length);

Результат:

5

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

Свойство length

length записывается через точку после строки или переменной со строкой.

let message = 'Привет';

console.log(message.length);

Результат:

6

Можно обращаться к length прямо у строки.

console.log('Привет'.length);

Результат будет таким же:

6

На практике чаще строка лежит в переменной, поэтому запись через переменную встречается чаще.

Пробелы тоже считаются

Пробел - это тоже символ. Поэтому он влияет на длину строки.

let text = 'Привет мир';

console.log(text.length);

Результат:

10

В строке ‘Привет мир’ 9 букв и 1 пробел. Всего 10 символов.

Пробелы в начале и в конце строки тоже считаются.

let name = ' Анна ';

console.log(name.length);

Результат:

6

В строке 4 буквы и 2 пробела.

Пустая строка

Пустая строка - это строка без символов.

let value = '';

console.log(value.length);

Результат:

0

Важно не путать пустую строку и строку с пробелом.

console.log(''.length);
console.log(' '.length);

Результат:

0
1

В первом случае символов нет. Во втором есть один пробел.

Проверка длины строки

Длину строки часто проверяют в условиях.

let password = 'qwerty';

if (password.length < 8) {
  console.log('Пароль слишком короткий');
}

Здесь условие проверяет, меньше ли длина пароля 8 символов.

Можно проверить, что строка не пустая.

let message = 'Привет';

if (message.length > 0) {
  console.log('Сообщение есть');
}

Если нужно не учитывать пробелы по краям строки, обычно используют trim(). Этот метод разберем отдельно.

length - не метод

length - это свойство, а не метод. Поэтому круглые скобки не нужны.

Правильно:

let word = 'code';

console.log(word.length);

Неправильно:

let word = 'code';

console.log(word.length());

Во втором примере JavaScript попробует вызвать length как функцию, но это число.

Эмодзи и сложные символы

С обычными буквами и цифрами length обычно совпадает с тем, что мы считаем символами визуально.

console.log('кот'.length);

Результат:

3

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

console.log('😊'.length);

Результат:

2

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

Итого

length показывает длину строки.

  • Свойство записывается так: string.length.
  • Пробелы тоже считаются символами.
  • У пустой строки длина равна 0.
  • length - это свойство, поэтому скобки после него не ставят.