Necesito crear una matriz de literales de objetos como este:
var myColumnDefs = [
{key:"label", sortable:true, resizeable:true},
{key:"notes", sortable:true,resizeable:true},......
En un bucle como este:
for (var i = 0; i < oFullResponse.results.length; i++) {
console.log(oFullResponse.results[i].label);
}
El valor de key
debe estar results[i].label
en cada elemento de la matriz.
javascript
arrays
object-literal
codecowboy
fuente
fuente
var obj = {
bit, simplemente presione el literal en sí.var obj
para hacer el código más claro, por supuesto, puede saltar, puede escribir el guión entero en una sola línea si desea :)La respuesta de RaYell es buena: responde a su pregunta.
Sin embargo, me parece que realmente debería crear un objeto con etiquetas con subobjetos como valores:
El enfoque anterior debería ser mucho más rápido e idiomático que buscar una clave para cada acceso en toda la matriz de objetos.
fuente
Puedes hacer algo así en ES6.
fuente
Esto es en lo que Array # map es bueno
fuente
Esto funcionará:
fuente
En la misma idea de Nick Riggs pero creo un constructor, y empujo un nuevo objeto en la matriz al usarlo. Evita la repetición de las claves de la clase:
fuente
Crearía la matriz y luego le agregaría los literales del objeto.
fuente
fuente
[]
lugar denew Array()
.Si desea ir más allá de @tetra con ES6, puede usar la sintaxis de propagación de objetos y hacer algo como esto:
fuente