2010-11-10 17 views

Respuesta

28

Las llaves representan un objeto literal. Es una forma de enviar pares de datos clave/valor.

Así que esto:

var obj = {name: "testing"}; 

Es utilizado como este para acceder a los datos.

obj.name; // gives you "testing" 

Puede asignar al objeto varios pares de clave/valor separados por comas, siempre que las claves sean únicas.

var obj = {name: "testing", 
      another: "some other value", 
      "a-key": "needed quotes because of the hyphen" 
      }; 

También puede usar los corchetes para acceder a las propiedades del objeto.

Esto sería necesario en el caso del "a-key".

obj["a-key"] // gives you "needed quotes because of the hyphen" 

Utilizando los corchetes, puede acceder a un valor utilizando un nombre de propiedad almacenado en una variable.

var some_variable = "name"; 

obj[ some_variable ] // gives you "testing" 
+0

Gracias, ¡muy útil! – milan

+0

@user - De nada. : o) – user113716

0
var x = {title: 'the title'}; 

define un literal objeto que tiene propiedades en él. usted puede hacer

x.title 

que evaluará al título;

esta es una técnica común para pasar configuraciones a los métodos, que es lo que está sucediendo aquí.

2

Las llaves en javascript se usan como abreviatura para crear objetos. Por ejemplo:

// Create an object with a key "name" initialized to the value "testing" 
var test = { name : "testing" }; 
alert(test.name); // alerts "testing" 

Salida de JavaScript Survey para más detalles Douglas Crockford.

61

A segunda respuesta posible ha surgido desde que se hizo esta pregunta. Javascript ES6 introducido Destructuring Assignment.

var x = function({ foo }) { 
    console.log(foo) 
} 

var y = { 
    bar: "hello", 
    foo: "Good bye" 
} 

x(y) 


Result: "Good bye" 
+9

Muchas gracias. Esta es exactamente la respuesta que estaba buscando. [Más aquí.] (Https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment) – FuzzY

Cuestiones relacionadas