Ver Mensaje Individual
  #2 (permalink)  
Antiguo 09/09/2011, 14:04
Avatar de zerokilled
zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años, 7 meses
Puntos: 1485
Respuesta: Esta estructura de datos es un objeto?

buenas,
ese tipo de estructura eventualmente es un objeto. concretamente, un objeto literal. un objeto también se puede crear con los constructores (new Constructor), pero dicho constructor es una función. sus instancias pertenecen a ese constructor. en cambio, un objeto literal siempre es una instancia del constructor Object.

Código:
// constructor ;
function Const(){
this.method = function(){return 'method';};
this.prop = 'prop';
}

var inst = new Const(),
literal = {method: function(){return 'method';},
prop: 'prop'
};

console.log(inst.constructor == Const); // true;
console.log(literal.constructor == Const); // false;
console.log(literal.constructor == Object); // true;
Cita:
Por otra partes, porque no me funciona el alert con el valor de la variable dato1 en ese ejemplo?
por dos factores. primero, en realidad no estas creando una variable, sino una propiedad de un objeto. y segundo, la función es un método del objeto. los métodos pueden accesar a las propiedades del objeto al que pertenecen pero es necesario hacer referencia a ellos debido al contexto en que estan declarados. es decir, la función hace referencia al objeto contenedor mediante el keyword this y a partir de ahí tiene acceso a sus propiedades y demás métodos.

__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.