Логотип schoolsw3.com
Учебники Справочники Упражнения КАК? Меню
Создать
Редактор Поддержка Форум

×
Учебники
Справочники
Упражнения
Пожертвовать Обновление Реклама Видео Магазин

JS Учебник

JS Главная JS Введение JS Установить JS Вывод JS Заявления JS Синтаксис JS Комментарии JS Переменные JS Let JS Const JS Операторы JS Арифметика JS Присваивание JS Типы данных JS Функции JS Объекты JS События JS Строки JS Методы строк JS Поиск строк JS Шаблоны строк JS Числа JS BigInt JS Методы чисел JS Массивы JS Методы массива JS Сортировка массива JS Итерация массива JS Постоянный массив JS Даты JS Формат дат JS Методы получения дат JS Методы набора дат JS Объекты Math JS Случайные числа JS Булевы JS Сравнения JS Оператор If...Else JS Оператор Switch JS Цикл For JS Цикл For In JS Цикл For Of JS Цикл While JS Оператор Break JS Повторяющиеся JS Наборы JS Карты JS Typeof JS Преобразование JS Битовые JS Выражения JS Ошибки JS Область JS Подъемный JS Строгий JS Ключевое слово this JS Стрелки JS Классы JS JSON JS Отладчик JS Стиль JS Практика JS Ошибки JS Эффективность JS Слова

JS Версии

JS Версии JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE/Edge JS История

JS Объекты

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

JS Функции

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

JS Классы

Введение класса Наследование класса Статистический класс

JS Асинхронный

JS Обратный вызов JS Асинхронный JS Обещания JS Асинхронный

JS HTML DOM

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

JS Браузер BOM

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

JS Веб APIы

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

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 или jQuery

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


JavaScript Строки



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


JavaScript Строка

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

Пример
var x = 'Все\'в поряде.';
Попробуйте сами »

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

JavaScript Строки как объекты

Обычно 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) false, потому что 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.


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

JavaScript упражнение:

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

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