2015-04-05 7 views

Odpowiedz

2

to dlatego konstruktor trwa do 3 argumenty

Float32Array(buffer [, byteOffset [, length]]); 

Każda funkcja w JavaScripcie ma właściwość length że powróci liczba nazwanych parametrów, które bierze.

E.g.

function foo(a, b) {} 
foo.length === 2; // true 

function bar() {} 
bar.length === 0; // true 
7

Float32Array to tak naprawdę funkcja. Możesz to sprawdzić, tak jak ta

Ta funkcja akceptuje trzy parametry. Podając sygnaturę z tej samej dokumentacji,

Float32Array(buffer [, byteOffset [, length]]); 

cytując Function.length documentation,

length jest właściwością obiektu funkcyjnego i wskazuje, ile argumentów funkcja oczekuje, czyli liczby formalny parametry.

Dlatego własnością Float32Arraylength jest zawsze 3.

2

Jest to długość liczby parametrów dla (obiektowego) funkcjiFloat32Array.

Jednak po jego instancję length będzie reprezentować liczbę indeksów:

console.log(Float32Array.length); // => 3, number of arguments 

var a = new Float32Array(10);  // create an instance with 10 indexes 
console.log(a.length);    // => 10, number of indexes 
Powiązane problemy