Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab_str-loc.doc
Скачиваний:
2
Добавлен:
13.11.2019
Размер:
85.5 Кб
Скачать

Рубанчик В.Б.

Лабораторная работа "Объекты String и location и их применение"

6/ 6

Лабораторная работа № 10

Тема: Объекты String и location и их применение

Цель работы: Изучить свойства и методы объекта location, а также получить практику работы со строковыми объектами JavaScript.

Объекты String.

Наряду с обычными символьными строками в стиле Си, в Javascript имеется специальный класс объектов String.

Объекты этого класса предназначены для хранения символьных строк. Преимущество класса String состоит в том, что объекты этого класса обладают рядом полезных методов для обработки срок. Например, для объектов String определены операции сравнения (==, !=).

Теоретически для создания объектов типа String, как и для любых других объектов, должен использоваться конструктор

var str = new String("foo")

Однако реально в программах применять конструкторы String нужно далеко не всегда, так как методы объектов типа String можно вызывать непосредственно для обычных строковых литералов. В этом случае Javascript автоматически преобразует строку во временный String-объект, который после использования разрушает.

Например, все объекты типа String имеют свойство length, хранящее длину строки. Это свойство можно получить как для объекта типа String, так и для обычной символьной строки. В следующих трех примерах результат будет одинаковым: в окно сообщений будет выведено число 14:

  1. s1 = new String ("Строка текста!"); // создается объект

alert(s1.length);

  1. var s2="Строка текста!"; // инициализируется переменная

alert(s2.length); // создается временный объект и

// вычисляется длина строки

  1. alert("Строка текста!".length); // создается временный объект и

// вычисляется длина строки

Длина пустой строки — нуль.

Некоторые методы объектов String

  1. Поиск первого (последнего) вхождения подстроки.

indexOf(searchValue[,fromIndex])

lastIndexOf(searchValue[,fromIndex])

Функция indexOf начинает поиск заданной подстроки с начала строки, а lastIndexOf — с конца. Поэтому они возвращают, соответственно, позицию первого и последнего вхождения указанной подстроки в строку, хранящуюся в объекте String.

Если подстрока не найдена, то функции возвращают –1.

Аргументы имеют следующий смысл:

searchValue — искомая подстрока (регистр букв при поиске учитывается),

fromIndex — позиция, с которой нужно начинать поиск (необязательный параметр). Значения этого параметра по умолчанию: для indexOf — нуль, для lastIndexOf — длина строки.

При работе со строками нужно учитывать, что символы строки индексируются слева направо от нуля. Поэтому индекс последнего символа равен длина_строки – 1.

Примеры.

а)Положение подстрок:

"Javascript".indexOf("Java") // 0

"Javascript".indexOf("JAVA") // –1

"Javascript".indexOf("script") // 4

"Javascript".indexOf("a") // 1

"Javascript".lastIndexOf("a") // 3

б) Подсчет числа вхождений буквы х в строку str:

var count = 0;

pos = str.indexOf("x");

while(pos != -1){

count++;

pos = str.indexOf("x",pos+1);

}

  1. Нахождение подстроки

Функция

substring(indexA, indexB)

выделяет подстроку, начинающуюся с позиции indexA и продолжающуюся до позиции indexB (т.е., не включая символ в этой позиции).

Если аргумент indexA меньше нуля, то он трактуется как нуль (т.е. подстрока берется от начала строки).

Если аргументу indexB задать значение, большее длины строки (length), то оно автоматически будет заменено на максимально возможное — значение длины строки, т.е. будет выделяется подстрока, заканчивающаяся вместе со строкой.

Примечания.

Если indexA равен indexB, то возвращается пустая строка.

Если indexB опущен, то искомая подстрока заканчивается в конце строки.

Если indexA больше, чем indexB, то новые версии JavaScript возвращают строку, начинающуюся в позиции indexB и заканчивающуюся в позиции indexA – 1.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]