Читаем JavaScript для детей полностью

var java = "Java";

java.length;

4

var script = "Script";

script.length;

6

var javascript = java + script;

javascript.length;

10

Здесь мы присвоили строковое значение "Java" переменной java,

а значение "Script" — переменной script. Затем мы добавили

.length к концу каждой из переменных, узнав таким образом длины

отдельных строк, а также длину составленной из них новой строки.

Обратите внимание: я говорил «можно добавлять .length к концу

как самой строки, так и переменной, содержащей строку». Это касается

очень важного свойства переменных: в любом месте программы, где

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

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

Получение отдельного символа строки

Иногда требуется получить из строки одиночный символ. Например, вы

можете зашифровать в наборе слов тайное послание, состоящее из вто-

рых символов каждого слова. Тогда, чтобы узнать это послание, нужно

получить все вторые символы и объединить их в новую строку.

Чтобы получить символ, стоящий в определенной позиции строки,

используйте квадратные скобки — []. Возьмите строку (или перемен-

ную, в которой хранится строка) и поставьте сразу после нее квадратные

скобки, в которых указана позиция нужного символа. Например, чтобы

получить первый символ строковой переменной myName, используйте

запись myName[0]:

2. Типы данных и переменные 37

var myName = "Ник";

myName[0];

"Н"

myName[1];

"и"

myName[2];

"к"

Обратите внимание — чтобы получить первый символ, мы указали

в скобках позицию 0, а не 1. Дело в том, что JavaScript (как и многие

другие языки программирования) ведет отсчет символов с нуля. Таким

образом, для получения первого символа строки указывайте позицию 0,

второго — 1 и т. д.

Попробуем разгадать наш тайный шифр, где во вторых буквах неко-

торого набора слов скрыто послание. Вот как это сделать:

Сode word —

var codeWord1 = "обернись";

кодовое

var codeWord2 = "неужели";

слово

var codeWord3 = "огурцы";

var codeWord4 = "липкие";

var codeWord5 = "?!";

codeWord1[1] + codeWord2[1] + codeWord3[1] + codeWord4[1] + 

codeWord5[1];

"беги!"

! Страницы этой книги недостаточно широки, чтобы напечатать

выражение, в котором мы объединяем буквы, одной строкой.

Значками помечены места, где код пришлось перенести на сле-

дующую строку. Однако вы, вводя этот код в компьютер, можете

напечатать его без переносов.

И снова обращаю внимание — второй символ каждой строки мы

получаем, указав позицию 1.

Получение среза строки

Slice — часть

Чтобы получить часть, или «срез», строки, используйте slice. Например,

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

анонса на вашем сайте. Чтобы воспользоваться slice, поставьте в конце

строки (или переменной, содержащей строку) точку, а после нее слово

slice и круглые скобки. В скобках укажите позицию первого символа

той части строки, которую вы хотите получить, затем запятую, а затем

позицию последнего символа. На рис. 2.2 показано, как использовать

slice.

38 Часть I. Основы

Эти два числа

задают начало и конец среза.

строка

Рис. 2.2. Использование slice для получения среза строки

Например:

Long string —

var longString = "Эта длинная строка такая длинная";

длинная

longString.slice(4, 18);

строка

"длинная строка"

Первое число в скобках — позиция символа, с которого начинается

срез, а второе число — позиция символа, который следует за последним

символом среза. На рис. 2.3 показано, каким символам соответствуют эти

значения. Начальная (4) и конечная (18) позиции выделены синим цветом.

Э т а

д л и н н а я

с т р о к а

т а к а я

д л и н н а я

0 1 2 3

4

5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Рис. 2.3. В нашем примере slice возвращает символы, обведенные серой рамкой

По сути, мы попросили JavaScript: «Вырежи из этой длинной строки

часть, которая начинается с символа в позиции 4 и продолжается

до позиции 18».

Если указать в скобках после slice только одно число, мы получим

строку-срез, которая начинается с данной позиции и длится до конца строки:

var longString = "Эта длинная строка такая длинная";

longString.slice(4);

"длинная строка такая длинная"

Перевод строки в заглавный или строчный регистр

Если нужно вывести какой-нибудь текст заглавными буквами, восполь-

To upper

зуйтесь toUpperCase.

case —

в верхний

регистр

"Эй, как дела?".toUpperCase();

"ЭЙ, КАК ДЕЛА?"

2. Типы данных и переменные 39

.toUpperCase() возвращает новую строку, все буквы в ко то рой —

заглавные.

To lower case —

Можно произвести и обратную операцию, использовав toLowerCase:

в нижний

регистр

"эЙ, кАК деЛа?".toLowerCase();

"эй, как дела?"

.toLowerCase() делает все символы строчными. Но ведь по прави-

лам предложение должно начинаться с заглавной буквы? Как сделать

Перейти на страницу:

Похожие книги