Escrito el 13 enero 2016 por Luis Ignacio Díaz Martínez
Trabajar con objetos en JavaScript es esencial hoy en día… y aún mas si trabajamos con JQuery.
A continuación veremos la función «push». Esta, nos permite añadir datos (otro objeto o valores) dentro de un objeto ya existente o declarado. Hay que tener en cuenta que esta función también es aplicable a matrices (array).
Tenemos el siguiente objeto declarado en JavaScript…
1 2 3 |
var objecto = { values: [] }; |
Podemos añadir un nuevo objeto (o valores) dentro de ‘objeto.values’. Para ello realizaremos lo siguiente gracias a la función ‘push’:
1 2 3 4 |
objecto.values.push({ id:1, name:'casa' }); |
Una vez realizado esto el objeto quedaría de la siguiente forma:
1 2 3 4 5 6 7 8 |
{ values:[ { id:1, name:'casa' } ] } |
Esta sería la explicación breve del funcionamiento de ‘push’ y su definición.
En JQuery podemos recorrer un objeto que ya tenemos y generar uno nuevo gracias a la función que hemos explicado anteriormente.
Imaginemos que tenemos el siguiente objeto:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
var marcas = { return:[ { id:"1", code:"HP", name:"Hewlett-Packard" }, { id:"2", code:"Canon", name:"CANON" }, ] } |
Y queremos añadir algunos de los valores de este objetos dentro del siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 |
var objetoNuevo = { values:[ { id:"1", label:"HP" }, { id:"2", label:"CANON" }, ] } |
Para ello, nos ayudaremos de la función «each» de JQuery…
1 2 3 4 5 6 |
$(marcas.return).each(function(){ objetoNuevo.values.push({ id:this.id, label:this.code }); }); |
Como podemos ver, sencillamente estamos recorriendo el objeto «marcas» y lo estamos almacenando en «objetoNuevo».