Scriptia. Javascript y buenas prácticas en español



Scriptia / artículos / El Array explicado a los phperos

El Array explicado a los phperos

Saltar a Anotaciones relacionadas

Amigos y compañeros que vivís del desarrollo con PHP, he aquí para vuestro uso y disfrute algunas traducciones de sintaxis de PHP en lo que a arrays se refiere.

## Declaración

En javascript podemos crear variables de tipo `Array` utilizando la sintaxis de _literal de arrays_, a saber, una lista de valores, separados por comas, dentro de un par de corchetes.

// PHP
$a = array('a', 'b', 'c');
$b = array();
// javascript
var a = [ 'a', 'b', 'c' ];
var b = [];

## Lectura, escritura

// PHP
$a[0]; // lectura
$a[0] = 'd'; // escritura
// javascript
a[0]; // lectura
a[0] = 'd'; // escritura

## Añadir elementos

PHP define el operador `[]=` para añadir elementos al array. Javascript no tiene tal operador, pero no deja de tener un método `Array.push`.

// PHP
$a []= 'e';
// javascript
a.push('e');

## Hashes

Uno de los usos habituales de arrays en PHP es la creación de estructuras de datos de tipo clave-valor.

// PHP
$peli = array('titulo' => 'Requiem for a Dream', 'valoracion' => 9);
// javascript
var peli = { 'titulo': 'Requiren for a Dream', 'valoracion': 9 };

Ojo, en la versión js, `peli` _no es_ un array sino un objeto. (En javascript, todos los arrays son objetos, pero eso es otra historia y merece ser contada en otra ocasión.)

Para iterar sobre sus propiedades:

// PHP
foreach($peli as $k => $v) {
    echo $k, ': ', $v;
}
// javascript
for (var i in peli) {
    alert(i + ': ' + peli[i]);
}

## Arrays de arrays

Cada uno de los elementos de un array puede contener cualquier tipo de valor. Por tanto, nada nos impide definir un array de arrays:

// PHP
$multi = array(
    array('a', b),
    array('c', 'd')
);
// javascript
var multi = [
    ['a', 'b'],
    ['c', 'd']
];

Alguien cuyo nombre no desvelaré me hizo anoche (en un bar, por supuesto) cierta pregunta sobre arrays multidimensionales. Mi respuesta no le dejó satisfecho. Confío en que dicho individuo tenga el coraje para manifistarse en los comentarios y darme pie a completar esta anotación.



5 comentarios RSS

1 faemino (2007-12-03 @ 1:14 pm):

Tarde, muy tarde, pero te doy las gracias.

2 Moisés (2008-01-27 @ 7:57 pm):

Seria muy bueno que pongas ARRAYS en PHP y sus multiples formas tanto de sintaxis como formas de poder mostrarlos en pantalla y aplicaciones basicas con las mismas.

3 choan (2008-01-28 @ 8:44 pm):

Moisés, no sé si te habrás dado cuenta de que el tema de este artículo (y de todo este sitio) es javascript y no PHP.

Así que… solicitud rechazada.

4 Conrado (2009-12-16 @ 5:12 am):

Hola estoy desarrollando la resolucion de un juego de mesa llamado “single noble” en PHP, queria saber si utilizando arrays podré hacerlo, o como seria la forma mas efectiva para hacerlo?? desde ya gracias y espero que me puedan ayudar..

5 choan (2010-01-15 @ 2:03 pm):

Conrado, mira a ver aquí.


Acerca de Scriptia

Saltar a la caja de búsqueda

Scriptia forma parte del PDM de Choan C. Gálvez, desarrollador web residente en Barcelona. Scriptia pretende mejorar la calidad de la documentación acerca de javascript disponible en español.