Как уже упоминалось ранее, данные могут иметь различный тип. Один из типов - числа, мы с вами уже немного изучили. Давайте теперь перейдем к строкам.
Строки создаются с помощью кавычек:
let str = 'abc';
alert(str); // выведет 'abc'
Кавычки могут быть не только одинарными, но и двойными:
let str = "abc";
alert(str); // выведет 'abc'
Между одинарными и двойными кавычками в JavaScript нет никакой разницы. Их использование зависит от ваших предпочтений. Я предпочитаю использовать одинарные кавычки, поэтому везде далее в учебнике будут стоять именно они.
Замечание
Здесь и далее, если результат вывода - строка, то я беру его в кавычки, чтобы показать, что это именно строка, вот так: выведет 'abc'. При выводе строки через alert никаких кавычек появляться не будет (то есть на экран выведется то, что у меня написано внутри кавычек).
Сложение строк
Для сложения строк, так же, как и для сложения чисел, используется оператор +:
let str = 'abc' + 'def'; // складываем две строки
alert(str); // выведет 'abcdef'
Строки также могут хранится в переменных:
let str1 = 'abc';
let str2 = 'def';
alert(str1 + str2); // выведет 'abcdef'
Можно также складывать переменные и строки:
let str1 = 'abc';
let str2 = 'def';
alert(str1 + '!!!' + str2); // выведет 'abc!!!def'
Пусть две строки хранятся в переменных, а при их сложении мы хотим вставить между ними пробел. Это делается так:
let str1 = 'abc';
let str2 = 'def';
alert(str1 + ' ' + str2); // выведет 'abc def'
Пусть переменная только одна:
let str = 'abc';
alert(str + ' ' + 'def'); // выведет 'abc def'
В этом случае нет смысла выделять пробел, как отдельную строку - вставим его как часть второго слагаемого:
let str = 'abc';
alert(str + ' def'); // выведет 'abc def'
Создайте переменную str и присвойте ей строку '!!!'. Выведите значение этой переменной на экран.
Создайте переменную с текстом 'java' и переменную с текстом 'script'. С помощью этих переменных и операции сложения строк выведите на экран строку 'javascript'.
Создайте переменную с текстом 'hello' и переменную с текстом 'world'. С помощью этих переменных и операции сложения строк выведите на экран строку 'hello world'.
Создайте переменную name и присвойте ей ваше имя. Выведите на экран фразу 'привет, %имя%'. Вместо %имя% должно подставится значение из переменной name.
Создайте переменную age и присвойте ей ваш возраст. Выведите на экран 'мне %возраст% лет'. Вместо %возраст% должно подставится значение из переменной age.
Длина строки
Давайте теперь рассмотрим, как найти длину строки (говоря другими словами количество символов в этой строке).
Длина строки содержится в свойстве length:
let str = 'abcde';
alert(str.length); // выведет 5
Свойство length не обязательно применять к переменной, можно и вот так:
alert('abcde'.length); // выведет 5
Пробел также является символом:
alert('ab de'.length); // выведет 5
Запишите в переменную какую-нибудь строку. Выведите на экран длину вашей строки.
Косые кавычки
В ES6 появился новый тип кавычек - косые:
let str = `abc`;
alert(str); // выведет 'abc'
Косые кавычки работают так же, как и обычные, но обладают некоторыми дополнительными эффектами, которые мы рассмотрим ниже.
Многострочность
В JavaScript строках, созданных через одинарные или двойные кавычки, не допустим перенос строки.
То есть вот так не будет работать:
let str = 'abc
def'; // так не будет работать
И так не будет работать:
let str = "abc
def"; // так не будет работать
А вот косые кавычки специально предназначены для создания многострочных строк:
let str = `abc
def`; // так будет работать
Запишите в переменную str строку, состоящую из символов 'a', 'b', 'c', причем после каждого символа, кроме последнего, должен стоять перенос строки. Выведите значение переменной на экран.