JavaScript. Подробное руководство, 6-е издание, стр. 524

Объекты

<b>TimeRanges</b>
, возвращаемые объектами
<b>MediaElement</b>
, всегда нормализованы, т. е. в них отсутствуют пустые и смежные или перекрывающиеся фрагменты.

Свойства

<b>readonly unsigned long length</b>

Количество фрагментов, представленных данным объектом

<b>TimeRanges</b>
.

Методы

<b>double end(unsigned long n)</b>

Возвращает конец фрагмента n (в секундах) или возбуждает исключение, если значение n меньше нуля или больше или равно значению свойства

<b>length</b>
,

<b>double start(unsigned long n)</b>

Возвращает начало фрагмента n (в секундах) или возбуждает исключение, если значение n меньше нуля или больше или равно значению свойства

<b>length</b>
.

TypedArray [63]

массивы с двоичными элементами фиксированного размера ArrayBufferView

Типизированные массивы являются подтипами

<b>ArrayBufferView</b>
, который интерпретирует байты в объекте
<b>ArrayBuffer</b>
, на котором он основан, как массив чисел и позволяет читать и изменять элементы этого массива. Данная справочная статья описывает не какой-то конкретный тип типизированных массивов, а охватывает восемь разных видов типизированных массивов. Все эти восемь типов являются подтипами
<b>ArrayBufferView</b>
и отличаются друг от друга только количеством байтов, выделенных для одного элемента массива и способом интерпретации этих элементов. В число этих восьми типов входят:

<b>Int8Array</b>

Массив однобайтных элементов, которые интерпретируются как целые со знаком.

<b>Int16Array</b>

Массив двухбайтных элементов, которые интерпретируются как целые со знаком, с использованием порядка следования байтов, определяемого платформой.

<b>Int32Array</b>

Массив четырехбайтных элементов, которые интерпретируются как целые со знаком, с использованием порядка следования байтов, определяемого платформой.

<b>Uint8Array</b>

Массив однобайтных элементов, которые интерпретируются как целые без знака.

<b>Uint16Array</b>

Массив двухбайтных элементов, которые интерпретируются как целые без знака, с использованием порядка следования байтов, определяемого платформой.

<b>Uint32Array</b>

Массив четырехбайтных элементов, которые интерпретируются как целые без знака, с использованием порядка следования байтов, определяемого платформой.

<b>Float32Array</b>

Массив четырехбайтных элементов, которые интерпретируются как вещественные числа, с использованием порядка следования байтов, определяемого платформой.

<b>Float64Array</b>

Массив восьмибайтных элементов, которые интерпретируются как вещественные числа, с использованием порядка следования байтов, определяемого платформой.* Как следует из названий, эти типы являются объектами, подобными массивам, которые обеспечивают доступ к значениям элементов с использованием привычной формы обращения к массивам с квадратными скобками. Отметьте однако, что объекты этих типов всегда имеют фиксированную длину.

Как отмечалось в описании выше, классы TypedArray по умолчанию используют порядок следования байтов, определяемый платформой. См. описание типа DataView, предназначенного для представления ArrayBuffer, который позволяет явно определять порядок следования байтов.

Конструктор

<b>new TypedArray(unsigned long length) </b>

<b>new TypedArray(TypedArray array)</b>

<b>new TypedArray(type[] array)</b>

<b>new TypedArray(Array Buffer buffer, [unsigned long byteOffset], [unsigned long length]) </b>

Для каждой из восьми разновидностей типизированных массивов имеется конструктор, который можно вызвать одним из приведенных выше четырех способов. Конструкторы действуют следующим образом:

• Если конструктор вызывается с единственным числовым аргументом, он создает новый типизированный массив с указанным количеством элементов и инициализирует каждый элемент нулем.

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

• Если конструктору передается единственный массив (истинный массив), он создает новый типизированный массив с тем же количеством элементов, что и в массиве в аргументе, и копирует элементы из массива в аргументе во вновь созданный массив.

• Наконец, если конструктору передается объект

<b>ArrayBuffer</b>
с необязательными аргументами, определяющими смещение и длину, он создает новый типизированный массив, который является представлением указанной области объекта
<b>ArrayBuffer</b>
. Длина нового типизированного массива зависит от размера области в
<b>ArrayBuffer</b>
и размера элементов в типизированном массиве.

Константы

<b>long BYTE$_PER_ELEMENT</b>

Количество байтов, занимаемых каждым элементом данного массива в лежащем в основе объекте

<b>ArrayBuffer</b>
. Эта константа будет иметь значение 1, 2, 4 или 8, в зависимости от вида типизированного массива.

Свойства

<b>readonly unsigned long length</b>

Количество элементов в массиве. Типизированные массивы имеют фиксированный размер, поэтому значение этого свойства никогда не изменяется. Не путайте это свойство со свойством

<b>byteLength</b>
, унаследованным от
<b>ArrayBufferView</b>
.

Методы

<b>void set(TypedArray array, [unsigned long offset])</b>

Копирует элементы массива array в данный типизированный массив, начиная с индекса offset.

<b>void set(number[] array, [unsigned long offset])</b>

Эта версия метода

<b>set()</b>
подобна предыдущей, но принимает не типизированный, а истинный массив.

<b>TypedArray subarray(long start, long end)</b>