Solución:
A segunda respuesta posible ha surgido desde que se hizo esta pregunta. Javascript ES6 introdujo la asignación de desestructuración.
var x = function({ foo }) {
console.log(foo)
}
var y = {
bar: "hello",
foo: "Good bye"
}
x(y)
Result: "Good bye"
Las llaves denotan un objeto literal. Es una forma de enviar pares de datos clave / valor.
Así que esto:
var obj = {name: "testing"};
Se usa así para acceder a los datos.
obj.name; // gives you "testing"
Puede asignar al objeto varios pares 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 utilizar corchetes para acceder a las propiedades del objeto.
Esto sería necesario en el caso de "a-key"
.
obj["a-key"] // gives you "needed quotes because of the hyphen"
Usando los corchetes, puede acceder a un valor usando un nombre de propiedad almacenado en una variable.
var some_variable = "name";
obj[ some_variable ] // gives you "testing"
Las llaves en javascript se utilizan 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"
Consulte la encuesta JavaScript de Douglas Crockford para obtener más detalles.