març 10, 2021

Array: mètodes push i pop – El teu Mentor en Programació

Com els Array en Javascript són objectes, els mateixos tenen una sèrie de mètodes que ens faciliten treballar amb ells.

per inserir elements en un vector hem vist que amb només assignar un valor a el vector en un determinat índex la dada queda emmagatzemat i eventualment l’atribut length modificat:

 
 var vec=; vec=10; vec=20; document.write(vec.length); //imprime 2 

Aquesta sintaxi hem de tenir cura com variem el subíndex per no deixar components buides si volem implementar una matriu dens.

Una variant per resoldre aquest mateix problema és utilitzar el mètode push de l’objecte Array. Aquest mètode afegeix el valor a la fi de el vector:

 
 var vec=; vec.push(10); vec.push(20); document.write(vec.length); //imprime 2 

Automàticament quan cridem a mètode push el valor que li vam passar en el paràmetre s’emmagatzema en el vector i s’incrementa l’atribut length.

Podem inclusivament trucar a l’mètode push passant més d’1 paràmetre:

 
 var vec=; vec.push(10,20); document.write(vec.length); //imprime 2 

el mètode invers anomenat pop extreu l’últim element de l’Array i decrementa en un l’atribut length:

 
 var vec=; vec.push(10,20,30,40); document.write(vec.length+'<br>'); //imprime 4 vec.pop(); document.write(vec.length+'<br>'); //imprime 3 document.write(vec.pop()+'<br>'); //imprime un 30 document.write(vec.length+'<br>'); //imprime 2 

el mètode pop () a més d’eliminar l’últim element de el vector retorna el valor emmagatzemat en aquesta component.

Si cridem a l’mètode pop i el vector està buit retorna el valor undefined.

Problema

Realitzar la càrrega de sous per teclat fins que s’ingressi el zero. Emmagatzemar tots els valors ingressats en un vector emprant el mètode push. Mostra la suma de sous ingressats.

 
 <html><head></head><body> <script type="text/javascript"> var sueldos=; var monto; do { monto=prompt('Ingrese el sueldo (0 para finalizar):',''); monto=parseInt(monto); if (monto!=0) { sueldos.push(monto); } } while (monto!=0); var suma=0; for(var f=0;f<sueldos.length;f++) { suma=suma+sueldos; } document.write('El total en sueldos ingresado es:'+suma); </script> </body></html> 

D’aquesta forma no portem un comptador per indicar la posició on s’ha d’emmagatzemar la component en el vector:

 
 sueldos.push(monto); 

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *