Javascript: objetos, funciones y arrays

Javascript logoEn Javascript no existe la programación orientada a objetos, o almenos de la forma como otros lenguajes de programación del lado del servidor. Igualmente, puede que haya veces que se quiera encapsular ciertos conceptos, para hacer el código más legible o de más fácil utilización.

Para ello hay que conocer tres elementos principales de Javascript:

Objetos

Aunque casi todo en Javascript es un objeto, entendiéndolos como un tipo de dato a definir, vienen a ser una colección de datos solamente. Si lo quisieramos comparar con PHP, serían arrays asociativos, donde cada elemento puede ser un valor una función:

var foo = {};
 
var bar = {
	num : 12,
	calc : function()
	{
		return this.num * 2;
	}
}
 
bar.num = 5;
bar.calc();	// 10
 
bar['num'] = 4;
bar.calc();	// 8

Funciones

Son lo más parecido a un objeto, dependiendo como se implementen. Se pueden definir de muchos aspectos, como por ejemplo, una función puede ser guardada en una variable.

var foo = function() {};
 
function bar
{
	this.num = 3;
	this.getNum = function()
	{
		return this.num;
	}
};
 
var bar1 = new bar();
bar1.num = 2;
bar1.getNum();	// 2
var bar2 = new bar();
bar2.getNum();	// 3
 
( function(){
	alert( 'called function' );
})()

Arrays

Los arrays en Javascript solamente pueden ser numéricos.

var foo = new Array();
 
var bar = [ 'red', 'blue', 'green' ];

Vía JavaScript Garden.

ACTUALIZACIÓN (2011/06/03): Añado otro enlace interesante sobre el tema:
Profundizando en Javascript, parte 2: objetos, prototipos, herencia y namespaces

ACTUALIZACIÓN (2011/09/02): Otro enlace:
Funciones declaradas VS Funciones expresadas en Javascript

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>