JSON, What the f…? is the data format of the web

¿Qué es JSON?
Javascript Object Notation es una forma de almacenar e intercambiar datos, que es ligera comparado al formato XML.

Se suele usar JSON en lugar de XML cuando el flujo de datos es muy grande, y la fuente de datos es segura y no es necesario el procesamiento XSLT para la manipulación de datos.

“JSON is the data format of the web”/ “JSON es el formato de datos de la web”
Así comenzó el post del blog de Google anunciando el uso de JSON para su servicios de

JSON es un subconjunto de la notación literal de objetos:

Los datos se colocan en pares nombre/valor
Los datos van separados por comas
Las llaves delimitan los objetos
Los corchetes delimitan los arrays
Ejemplo:
var players = [
{“nombre”:”Pepe”, “numero”:”1″},
{“nombre”:”Roberto”, “numero”:”7″}
];
Un ejemplo de objeto javascript y no JSON:
var jugador = {
“nombre”:”Pepe”,
“numero”:”1″,
“jugar”: function(){
alert(“Pepe entra a jugar”);
}
};

¿Es necesario utilizar comillas para el identificador de la propiedad de un objeto? Para javascript le es indiferente, por lo que se emplea para utilizar nombres reservados por el lenguaje, o identificadores con caracteres no permitidos.

var jugador = {
nombre:”Pepe”,
numero:”1″,
jugar: function(){
alert(“Pepe entra a jugar”);
}
};

Un artículo muy interesante sobre JSON:
http://www.anieto2k.com/2009/07/06/todo-lo-que-siempre-quisiste-saber-sobre-json/

Javascript: Square Brackets vs Curly Brackets

Cuando estamos empezando a programar y sobre todo a leer código en javascript, es fundamental aclarar el uso de las llaves y los corchetes.
Square Bracket “[” , “]” Corchete
Curly Bracket “{” , “}” Llave
Square Bracket / Corchete / [ ]
En javascript se utilizan los corchetes para definir los valores de un array y para acceder a las propiedades de un objeto, o a la posición de un array.

Definir valores de un array:
var my_array = [1, “dos”, true];

Acceso a las propiedades de un objeto:
my_object[‘property’] = ‘Propiedad del objeto’;
equivalente a:
my_object.property = ‘Propiedad del objeto’;

Acceder a una posición de un array:
my_array[i] = ‘valor’;

Curly Bracket / Llave / { }
Las llaves se usan principalmente para delimitar los bloques de sentencias, pero además se utilizan para definir objetos.

Delimitar los bloques de sentencias:
{
sentencia 1;
sentencia 2;
.
.
.
sentencia n;
}

Definir objetos, delimitados por las llaves se colocaran las propiedades y sus parejas de valores:
var my_object = {name:”Pepe”, age:46, funny:true};

¿Es necesario utilizar comillas para el identificador de la propiedad de un objeto? Para javascript le es indiferente, por lo que se emplea para utilizar nombres reservados por el lenguaje, o identificadores con caracteres no permitidos.

var my_object={
“name”:”Pepe”,
“age”:46,
“funny”:true
};

Javascript: setInterval only run once / sólo se ejecuta una vez

setInterval expects a reference to a function. So if we do:

var clock = setInterval(functionName(), 1000);

We are executing the functionName function immediately and passing its return value to setInterval.

Correct form:

var clock = setInterval(function, 1000);

setInterval requiere como primer parámetro la función que ejecutará por referencia. Si utilizamos el nombre de la función con los paréntesis estaremos ejecutando la función, y pasando como parámetro a setInterval el valor devuelto por esta función o undefined