ugrás a tartalomhoz

Mysterious arguments object assignments

Török Gábor · 2010. Nov. 2. (K), 15.33
Az arguments tömb a függvényhívásnál tényleges átadott paraméterek szerint jön létre
 
1

tömb?

Poetro · 2010. Nov. 2. (K), 18.45
Az arguments nem tömb, csak tömbnek látszó objektum. De például nem rendelkezik a tömbök függvényeivel.
The arguments object is not an array. It is similar to an array, but does not have any array properties except length. For example, it does not have the pop method. However it can be converted to a real array:
var args = Array.prototype.slice.call(arguments);
2

nem tömb

Török Gábor · 2010. Nov. 2. (K), 18.52
csak pongyolán fogalmaztam.
3

A tömb vajon mi?

Ustak · 2010. Nov. 2. (K), 23.22
Ez már filozófia. Azért az arguments "nem tömb" mennyivel "nem tömbebb" mint az "igazi tömb" Array Global Object (!!:-)).
Ám eme meghatározás szerint mindkettő nagyon tömb:
Array_data_type
In computer science, an array type is a data type that is meant to describe a collection of elements (values or variables), each selected by one or more indices that can be computed at run time by the program. Such a collection is usually called an array variable, array value, or simply array

Csak hogy beleokoskodjak én is.
4

Méret

Poetro · 2010. Nov. 3. (Sze), 00.23
Csak hogy a tömbnek van mérete, és ha egy újabb elemet adok hozzá, vagy veszek el belőle, akkor ez a szám változik. Az arguments-re ez nem igaz.
5

objektum

Török Gábor · 2010. Nov. 3. (Sze), 11.01
(function () { return arguments.constructor; })() == Object // true
[].constructor == Array // true
6

Konklúzió

presidento · 2010. Nov. 6. (Szo), 19.10
A konklúzió a legjobb:
This was just a subtle reminder that there are dark corners of JavaScript where dragons lie. It’s fun to poke the dragons from time to time and learn exactly what they’ll do. Sometimes they’ll burn you, but you’ll learn either way.

Vannak a JavaScriptnek sötét sarkai, ahol sárkányok laknak. Jó időről időre megbökdösni őket, és megnézni, mit is csinálnak pontosan. Néha tüzet okádnak rád, de legalább tudni fogod… :)