¿Dónde puedo obtener información sobre la sintaxis del parámetro objeto para funciones javascript?

Si quiero llamar a una función como esta:

moo({ a: 4 });

Normalmente tendría que expresar mi definición de función de esta manera:

function moo(myArgObj) {
    print(myArgObj.a);
}

Pero esta sintaxis impresionante es totalmente válida en spidermonkey para definir funciones:

function moo({ a, b, c }) { // valid syntax!
    print(a); // prints 4
}

¿Alguna idea donde pueda encontrar información sobre esto? Me gustaría ver cuán poderosa es esta característica.

Lo vi en una charla de javascript / ecmascript 5 hace un tiempo, pero ya no puedo encontrarlo. No aparece en ninguno de los videos que puedo encontrar en youtube, y no se menciona en el propio PDF del estándar.

Respuestas a la pregunta(1)

Su respuesta a la pregunta