Introducción a Arreglos en JavaScript
Introducción a Arreglos en JavaScript
ouso«P
vyer
N»C
erxtehpat
maarpanaziliutesptiS
vracJdeosglerraLos
Mostrando arreglos
i rotut et se nE
Ejemplo
<pid="demo"></p>
<script>
var cars = ["Saab", "Volvo", "BMW"];
[Link]("demo").innerHTML = coches;
</script>
am
[Link])eln(em
aíL
pilraer
neH
m
i"reld=
ceoT
iln"adL
yesgrtcaM
m
u"írenlm
"[Link]é"L
ldruet"s
Inténtalotúmismo
Creaunaregloyasígnalevalores:
Ejemplo
varcars = ["Saab","Volvo","BMW"];
Inténtalo tú mismo »
Loespacoiysolsaotldsníelanosonm
i poartneU
[Link]óinpuedeabarcam
rúpinteílseas:
Ejemplo
varcars = [
Saab
Volvo
BMW
];
Pruébalo tú mismo »
Nuncapongasunacomadespuésdeúlltimoelemento(como"BMW")E
,.elfectoesinconsistenteentrenavegadores.
¿Qué es un arreglo?
Unaregoleusnavaribelspeqcai,ulepuedeconetnem
rádseunvaolavrez.
anu senei t iS
:ot se
Sinembargo¿,quépasasqiuieresrecorerloscochesyencontrarunoespecífico?¿Yquépasasniotuviste3coches,ino.
30?
T
aoysnr!aihueostl
Unaraypuedeconetnem
ruchovsaolrebsaojunsoolnombyrep,uedeasccedeoalrvsaolreésrifndoeatunídcie
núm
[Link]
Creando un Array
UsarunaliteradlearegloeslaformamásfácdilecrearunaregloenJavaScript.
Sniatxsi:
Eejmpol:
Ejemplo
varcars =newArray("Saab","Volvo","BMW");
Inténtalo tú mismo »
haecxm
oL
nsaecrdjtioem
alrsnoN
teipnsltew
houndA
[Link])r(
.z)m
ideratlertim
lodem
olét(iporeelzailiutóencu,iejdeadocivelydailbiegldm
a,cisiP plor
Acceder a los elementos de un array
nceú.dm
iídeloalenrcaizm
iarem
laetudneoaentaencriH
efraces
m
epielrm
cdeonreclnhovste:ralióacneldaireE
calts
var nombre = coches[0];
m
oeaum
pioetlrslóm
en:rsaoceldinóeatE
vcliotfsdi
cars[0] = "Opel";
ne otnm
eele rm
ei rplese]0[
Debdioaesopt,uedetsnevraribeldsedfeirenpeitsoesnm
elsimoaregol.
A
uayne:raysraenP
rtuedA
[Link]
rtuedA
[Link]
rtueds
myArray[0] = [Link];
myArray[1] = myFunction;
myArray[2] = myCars;
Peorlas,regoldseJavaScpsriedtescbrienmeojcromoaregols.
Araysusenumbersotaccest"ielmensInt".htsiexampepl,erson[0]reutrnsJohn:
Array:
varperson = ["John","Doe",46];
Pruébalo tú mismo »
Losobjetosusannombresparaaccederasus"miembros".Enesteejemplo,[Link]:
Objeto:
varperson = {firstName:"John", lastName:"Doe", age:46};
Inténtalo tú mismo »
Examples
varx = [Link]; La propiedad length devuelve el número de elementos en cars
vary = [Link](); El método sort() ordena los coches en orden alfabético
Lom
séotdodsearegolsecubrenenpelróxm
i ocaputíol.
La propiedad de longitud
núm
[Link]
l)a(edyoreduaoenldstgiadyevlruaL
denpohldgratid
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link]; la longitud de las frutas es 4
Inténtalo tú mismo »
Tw
ehnaslegypotirayeorsnem
[Link]
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
fruits[[Link]] ="Lemon"; // agrega un nuevo elemento (Limón) a frutas
Inténtalo tú mismo »
Agergealrmenotcsonídcieoatspluedecr"ahroyonsi"denifdoesnunary:
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
fruits[10] ="Lemon"; // agrega un nuevo elemento (Limón) a frutas
Inténtalo tú mismo »
Ejemplo
índice de variables;
varfruits = ["Banana","Orange","Apple","Mango"];
para(index =0; index < [Link]; index++) {
texto += frutas[indice];
}
Pruébalo tú mismo »
¿Arreglos asociativos?
Muchoslenguajesdeprogramaciónadmitenarreglosconíndicesnombrados.
Loasregolcsonídciensombradoaslemanaregolasocavito(oshashes).
nom
.dosabsrecndiíoncosglerraatoprsnoptiS
vracJ
, tpi rcSavaJ nE
Ejemplo:
varpersona = []
person[0] ="John";
person[1] ="Doe";
person[2] =46;
varx = [Link]; // [Link] devolverá 3
variar = persona[0]; // person[0] devolverá "John"
Pruébalo tú mismo »
u sazi l i tu iS
[Link]ánorm
pdsuolcitsegdloyétradsperi
Ejemplo:
varperson = [];
person["firstName"] ="John";
person["lastName"] ="Doe";
person["age"] =46;
varx = [Link]; // [Link] devolverá 0
variedad = persona[0]; // persona[0] devolverá indefinido
Prueba tú mismo »
, tpi rcSavaJ nE
Loasregolsonupnitoespecdaileobejotcso,nídciensumerados.
¿Cuándo usar arreglos? ¿Cuándo usar objetos?
.vositaiocsaosglerraatoprsnoptiS
vracJ
.oexm
)ntelcoaud(snm
eoqlsdaneutobsejzbasriD
liuebte
em
neloasúnm
[Link]
uarsasebíer
Usa[]ensulugar.
am
lpo:usladnotvacíyrnaruevnoeacresenterfdionesaciardecldosasEts
núm
6eno:sierconqtueoeglrnaruevnoeacresenterfdionesaciardecldosasEts
Pruébalo tú mismo »
edscupeoasgóncdyL
ruve:nam
iotscbfluraepbcvarlipl
varpoints = new Array(40, 100); // Crea un arreglo con dos elementos (40 y 100)
Inténtalo tú mismo »
d."evaoJycdubtpaS
ejlpoaidm
ercbE
foqelruelsa
varfruits = ["Banana","Orange","Apple","Mango"];
Inténtalo tú mismo »
[Link]
yetroqiuacrne'oecybtdopjetvE
'aodeurflr
ónuincfaopirut raercpsduem
eobl,paretserveolseraP
ra
functionisArray(myArray) {
[Link]().indexOf("Array") >-1;
}
Inténtalo tú mismo »
gaurm
[Link]
saódrfnolectria
Omásprecisamente:devuelveverdaderosielprototipodelobjetodelargumentoes"[objectarray]".
N»C
erxtehpat
m
[Link]étocadsriavJpeanS
toiegcsrlaosldeuzL
afra
com
E
eloD
uaedvém
sptoO
lcpeadryom
)[Link](nifaedpluoacrndaena:
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link]("demo").innerHTML = [Link]();
Inténtalo tú mismo »
.segulaions)ng(iroStyuO
e)vla(f,ptvaiS
JrcdeosgelrraoslaPra
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link]("demo").innerHTML = [Link]();
Inténtalo tú mismo »
uceandoeagnrm
[Link]
ledouE
tnés)boe(ildjéto
:daorpeasleracifpicespudesopre,)ng(irocS
m
atextcaonetcm
aSetpor
Ejemplo
<pid="demo"></p>
<script>
var fruits = ["Banana", "Orange","Apple", "Mango"];
[Link]("demo").innerHTML = [Link](" * ");
</script>
Pruébalo tú mismo »
Popping y Pushing
Cuando trabajas con arreglos, es fácil eliminar elementos y agregar nuevos elementos.
em
[Link]
uaoeglnrouaendsctaeronstp:unhsgi'ypopn'gcia'igfnqisouelesE
ots
m
iem
otelgú:rm
uadE
noeilnetdapéiop)(
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](); // Removes the last element ("Mango") from fruits
Try it Yourself »
:)nalifm
Eaoungeldp(értam
oyuevrh)lsao(naoent
Recuerda[:0]eseplrm
i ereelmenotenunaregol[1.]eseslegundoL
.osnídciesdeolsaregolscomeinzanen0.
Example
varfruits = ["Banana","Orange","Apple","Mango"];
[Link]("Kiwi"); // Agrega un nuevo elemento ('Kiwi') a frutas
Pruébalo tú mismo »
m
E
acs"duoqaefln."dupévtaloeup)el(
[Link]
E
undoeltadogvepéiltaovuh)esl(
Elementos en movimiento
Despalzameinotesquviaelneatxratbe,rajndoenpem
lri erlmenotenulgadrúm
eitl o.
deom
sem
ldaotebl".m
aóhzesjypuá"naocilegrm
nalisutdenroleati)m
(E
toflhdsétio
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](); // Elimina el primer elemento "Plátano" de frutas
Pruébalo tú mismo »
em
elom
sgloeunisaot:sádazeps'l'yo,pn)icpralunge(m
roaegE
vr)luao(nladutéoenfhsti
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link]("Lima");// Agrega un nuevo elemento "Lima" a fruits
Try it Yourself »
cd"[Link]"u)em
l(E
thfoelsdtéio
[Link]
ilavuE
)el(odutéonfhsi
Cambiando Elementos
Loeslmenotdsaerlgolseaccedenusandosunúmerodneídcie:
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
fruits[0] ="Kiwi"; Cambia el primer elemento de frutas a 'Kiwi'
Pruébalo tú mismo »
Tehnegylpotrdvearsnieayswoayptendanew
em
eloayntre:at
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
fruits[[Link]] ="Kiwi"; Agrega "Kiwi" a fruta
Pruébalo tú mismo »
Eliminando elementos
DadoquoelasregoldseJavaScpsriotnobejotles,lmenotsepuedenem
ilnizauilritndoelperadodreledteJavaScpri:t
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
eliminar frutas[0]; // Cambia el primer elemento en frutas a indefinido
Inténtalo tú mismo »
EliminarelementosdeareglosdejaagujerosindefinidosenealregloU
. sapop()osplice()ensulugar.
Unir un Array
m
T
)ce(hiepsoltdcanbeuosdatdnew
m
toiayntrs:a
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](2,0,"Limón","Kiwi");
Pruebalo tú mismo »
andó.euom
ntpc)iservloaiñds(aedlonbim
sredntipefám
r2aE
()eorlet
Thescondpam
r0d()efi
rentehsowmaneym
elhseondutbelm
roved.
páL
"m
naor(eum
solievndaK
"rsgoeánqiastów
[Link],)"tE
il
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](0,1); // Elimina el primer elemento de frutas
Inténtalo tú mismo »
.)anreum
oódntesvplrcibnoeasg(idnroealnsm
tedipefám
r0aE
()eorlet
m
eisgeclunE
oáaendistpeobfálsm
.rn1aet()oret
em
N
epláam
ñ[Link]
om
elnti
Ordenar un Arreglo
cam
ibfétalyeod:rnuaetnm
a)E
(hoeltsdéro
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](); // Ordena los elementos de frutas
Pruébalo tú mismo »
Invirtiendo un arreglo
em
[Link]
iE)oevls(dréeto
dcoensrd:enotglraundoenraparoP
luarseds
Ejemplo
varfruits = ["Banana","Orange","Apple","Mango"];
[Link](); Ordena los elementos de frutas
[Link](); Revierte el orden de los elementos
Inténtalo tú mismo »
Ordenamiento Numérico
Podrefecafuoltn,cóinso()rtdenoalvsaolrecsomocadenas.
cM
"ad(puaeonfbrE
acisP
á".otd)selansezvatneia"
Sinembargos,liosnúmerosseordenancomocadenas",25"esmayorque"100"p,orque"2"esmayorque"1".
Debdioaem
soetl,éotdosop()rtoducráuinresuatldonicorecotalrdenanrúmeros.
com
dpnuóercaiofudrónoteaspc:iarareglrPaueds
Ejemplo
varpoints = [40,100,1,5,25,10];
[Link](function(a, b){return a-b});
Inténtalo tú mismo »
Usaem
l ismométodoparaordenarunareglodemaneradescendente:
Ejemplo
varpoints = [40,100,1,5,25,10];
[Link](function(a, b){return b-a});
Inténtalo tú mismo »
La función de comparación
[Link]óalcnifaiscuodlnreurconódfm
iecafesldoeparptE
óisl
dgeauprvm
oensid,liptuL
coeódfnim
oes:cartvnoeódig,poanuvcbiteralvoerl
Cuando la función sort() compara dos valores, envía los valores a la función de comparación y ordena los valores.
vo)itiposo,recvo,itgnae(otvdlueorlvaleoncdoruecade
Ejempol:
vno.ei4g)ouv01adtr6(cn-yL
uelvó0fauncieal
10a.or4coi0nem
rácfaiuL
odófnreoucviarm
nlscloenti
Ejemplo
varpoints = [40,100,1,5,25,10];
[Link](function(a, b){return b-a});
// ahora points[0] contiene el valor más alto
Inténtalo tú mismo »
Ym
elábsaoj:
Ejemplo
varpoints = [40,100,1,5,25,10];
[Link](function(a, b){return a-b});
// now points[0] contains the lowest value
Inténtalo tú mismo »
Unir Arrays
ayr:scadonescaunm
trleyE
acrvoldcéo)tn(cat
Ejemplo
varmyGirls = ["Cecilie","Lone"];
varmyBoys = ["Emil","Tobias","Linus"];
varmyChildren = [Link](myBoys); // Concatenates (joins) myGirls and myBoys
Inténtalo tú mismo »
Thm
eco)n(chatoedcaknetanynum
aygrbaouerfm:sent
Ejemplo
vararr1 = ["Cecilie","Lone"];
vararr2 = ["Emil","Tobias","Linus"];
vararr3 = ["Robin","Morgan"];
var misHijos = [Link](arr2, arr3); // Concatena arr1 con arr2 y arr3
Inténtalo tú mismo »
Cortando un array
oeg:rluadneuptnaerxtm
)ceE
(ioldséto
Ejemplo
varfruits = ["Banana","Orange","Lemon","Apple","Mango"];
varcitrus = [Link](1,3);