Ядро JavaScript 1.5. Справочник

       

SubString


Возвращает поднабор String-объекта.

Метод из

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMAECMA-262


Синтаксис

subString(indexA, indexB)

Параметры

indexA

Целое, начиная от 0, на 1 меньшее, чем length строки.

indexB


Целое, начиная от 0, на 1 меньшее, чем length строки.


Описание

subString извлекает символы с indexA до, но не включая, indexB.

В частности:

Если indexA меньше 0, indexA рассматривается как имеющий значение 0.

Если indexB больше, чем StringName.length, indexB рассматривается так, как если бы он был StringName.length.

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

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

В JavaScript 1.2 используется LANGUAGE="JavaScript1.2" в тэге SCRIPT:

Если indexA больше, чем indexB, JavaScript производит ошибку времени выполнения (out of memory/недостаточно памяти).

В JavaScript 1.2 - без LANGUAGE="JavaScript1.2" в тэге SCRIPT:

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


Примеры
Пример 1.

В это примере subString используется для отображения символов из строки "Netscape":

var anyString="Netscape"

// Displays "Net"

document.write(anyString.subString(0,3))

document.write(anyString.subString(3,0))

// Displays "cap"

document.write(anyString.subString(4,7))

document.write(anyString.subString(7,4))

// Displays "Netscap"

document.write(anyString.subString(0,7))

// Displays "Netscape"

document.write(anyString.subString(0,8))

document.write(anyString.subString(0,10))

Пример 2.

В это примере замещается подстрока в строке. будут замещаться отдельные символы и подстроки. Вызов функции в конце примера изменяет строку "Brave New World" в "Brave New Web".

function replaceString(oldS,newS,fullS) {

// заменяет oldS на newS в String> fullS

 for (var i=0; i<fullS.length; i++) {

    if (fullS.subString(i,i+oldS.length) == oldS) {

       fullS = fullS.subString(0,i)+newS+fullS.subString(i+oldS.length,fullS.length)

    }

 }

 return fullS

}

replaceString("World","Web","Brave New World")

Пример 3.

В JavaScript 1.2, используя LANGUAGE="JavaScript1.2", следующий скрипт производит ошибку времени выполнения (out of memory).

<SCRIPT LANGUAGE="JavaScript1.2">

str="Netscape"

document.write(str.subString(0,3);

document.write(str.subString(3,0);

</SCRIPT>

Без LANGUAGE="JavaScript1.2", вышеприведённый скрипт печатает следующее:

Net Net

Во втором write индексы поменялись местами.


См. также

.



Содержание раздела