САМОСТОЯТЕЛЬНОЕ ОБУЧЕНИЕ ДЛЯ ВЕБ РАЗРАБОТЧИКОВ
×

JS Учебник

JS Главная JS Введение JS Что? Где? Куда? JS Вывод JS Заявления JS Синтаксис JS Комментарии JS Переменные JS Операторы JS Арифметика JS Присваивания JS Типы данных JS Функции JS Объекты JS События JS Строки JS Методы строк JS Числа JS Методы чисел JS Массивы JS Методы массива JS Сортировка массива JS Итерация массива JS Объекты дат JS Формат дат JS Метод получения дат JS Метод набора дат JS Математические... JS Случайные числа JS Булевы JS Сравнение... JS Заявления if...else JS Заявление switch JS Цикл for JS Цикл while JS Заявление break... JS Преобразование... JS Битовые... JS Регулярные выражения JS Ошибки JS Область JS Подъемный JS Строгий JS Ключевое слово this JS Ключевое слово let JS Константы JS Функция стрелки JS Классы JS Отладчик JS Руководство стиля JS Практика JS Распространенные ошибки JS Эффективность JS Зарезервированные слова JS Версии JS Версия ES5 JS Версия ES6 JS Версия 2016 JS Версия 2017 JS JSON

JS Формы

JS Формы JS Формы API

JS Объекты

Определение объекта Свойства объекта Методы объекта Отображение объекта Доступ к объекту Конструкторы объекта Прототипы объекта ES5 Методы объекта

JS Функции

Определение функции Параметры функции Вызов функции Вызвать функцию Применение функции Закрытие функции

JS Прочее

Классы введение Наследование класса Статические методы... JS Обратный вызов JS Асинхронный JS Обещания JS Асинхронный синтаксис

JS HTML DOM

DOM Введение DOM Методы DOM Документы DOM Элементы DOM HTML DOM CSS DOM Анимация DOM События DOM Прослушиватель событий DOM Навигация DOM Узлы DOM Коллекция DOM Список узлов

JS Браузера BOM

JS Window JS Экран JS Расположение JS История JS Навигатор JS Предупреждение JS Синхронизация JS Cookies

JS AJAX

AJAX Введение AJAX XMLHttp AJAX Запрос на сервер AJAX Ответ с сервера AJAX XML Файл AJAX PHP Файл AJAX ASP Файл AJAX База данных AJAX Приложения AJAX Примеры

JS JSON

JSON Введение JSON Синтаксис JSON или XML JSON Типы данных JSON Парсинг JSON Строки JSON Объекты JSON Массивы JSON PHP JSON HTML JSON JSONP

JS Веб API

API - Введение API - История API - Хранилище API - Работник API - Извлечь файл API - Геолокации

JS или jQuery

jQuery HTML Селекторы jQuery HTML Элементы jQuery CSS Стили jQuery HTML DOM

JS Примеры

JS Примеры JS HTML DOM JS HTML Ввода JS HTML Объекты JS HTML События JS Браузер JS Редактор JS Упражнения JS Викторина JS Сертификат

JS Справочник

JavaScript Объекты HTML DOM Объекты


Спасибо за поддержку, сайт продолжает работать

JavaScript Строки



Строки JavaScript используются для хранения текста и управления им.


Строки JavaScript

Строка JavaScript - от зеро или более символов, записанных в кавычках.

Пример

var x = "Щипунов Андрей";
Попробуйте сами »

Вы можете использовать одинарные или двойные кавычки:

Пример

var carName1 = "Вольво XC60";  // Двойные кавычки
var carName2 = 'Вольво XC60';  // Одинарные кавычки
Попробуйте сами »

Вы можете использовать кавычки внутри строки, если они не соответствуют кавычкам, окружающим строку:

Пример

var answer1 = "Все' в порядке";
var answer2 = "Его фамилия 'Щипунов'";
var answer3 = 'Его фамилия "Щипунов"';
Попробуйте сами »

Длина строки

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

Пример

var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
Попробуйте сами »


Специальные символы

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

var x = "Мы так называемые "Викинги" с севера.";

Строка будет перерезана до "Мы так называемые".

Чтобы избежать этой проблемы, можно использовать escape - символ обратной косой черты.

Управляющий (\) символ обратной косой черты, превращает специальные символы в строковые символы:

Код Результат Описание
\' ' Одиночная кавычка
\" " Двойная кавычка
\\ \ Обратная косая черта

Последовательность \" вставляет двойные кавычки в строку:

Пример

var x = "Мы так называемые \"Викинги\" с севера.";
Попробуйте сами »

Последовательность \' вставляет одинарную кавычку в строку:

Пример

var x = 'Он\'и хороши.';
Попробуйте сами »

Последовательность \\ вставляет обратную косую черту в строку:

Пример

var x = "Символ \\ называется обратной косой чертой.";
Попробуйте сами »

В JavaScript действительны шесть других escape - последовательностей:

Код Результат
\b Возврат
\f Форма подачи
\n Новая линия
\r Carriage возврат
\t Горизонтальная табуляция
\v Вертикальная табуляция

Приведенные выше 6 escape - символов изначально были разработаны для управления пишущими машинками, телетайпами и факсами. Они не имеют смысла в HTML.


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

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

Если оператор JavaScript не помещается в одну строку, лучше всего его прервать после оператора:

Пример

document.getElementById("demo").innerHTML =
"Привет Андрей!";
Попробуйте сами »

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

Пример

document.getElementById("demo").innerHTML = "Привет \
всем!";
Попробуйте сами »

Этот \ метод не является предпочтительным. У него может не быть универсальной поддержки.
Некоторые браузеры не допускают пробелов после \ символа.

Более безопасный способ разбить строку - использовать сложение строки:

Пример

document.getElementById("demo").innerHTML = "Привет " +
"всем!";
Попробуйте сами »

Вы не можете разбить строку кода обратной косой чертой:

Пример

document.getElementById("demo").innerHTML = \
"Привет Андрей!";
Попробуйте сами »

Строки могут быть объектами

Обычно строки JavaScript представляют собой примитивные значения, созданные из литералов:

var firstName = "Щипунов";

Но строки также могут быть определены как объекты с ключевым словом new:

var firstName = new String("Щипунов");

Пример

var x = "Щипунов";
var y = new String("Щипунов");

// typeof x вернет строку
// typeof y вернет объект
Попробуйте сами »

Не создавайте строки как объекты. Это замедляет скорость выполнения. Ключевое слово new усложняет код. Это может привести к неожиданным результатам:

При использовании == оператора равные строки равны:

Пример

var x = "Щипунов";             
var y = new String("Щипунов");

// (x == y) true, потому что x и y имеют равные значения
Попробуйте сами »

При использовании === оператора равные строки не равны, потому что === оператор ожидает равенства как по типу, так и по значению.

Пример

var x = "Щипунов";             
var y = new String("Щипунов");

// (x === y) false, потому что x и y имеют разные типы (string и object)
Попробуйте сами »

Или даже хуже. Невозможно сравнивать объекты:

Пример

var x = new String("Щипунов");             
var y = new String("Щипунов");

// (x == y) false, потому что x и y - разные объекты
Попробуйте сами »

Пример

var x = new String("Щипунов");             
var y = new String("Щипунов");

// (x === y) false, потому что x и y - разные объекты
Попробуйте сами »

Обратите внимание на разницу между (x==y) и (x===y).
Сравнение двух объектов JavaScript всегда возвращает false.


Проверьте себя с помощью упражнений

Упражнение:

Используйте length свойство, чтобы предупреждать о длине txt.

var txt = "Привет, мир!";
var x = ;
alert(x);

Старт