Les clés d'objet étant des chaînes, elles peuvent contenir tout type de caractères et caractères spéciaux. Je suis récemment tombé sur un objet que je reçois d'un appel API. Cet objet a "-" dans ses noms de clés.
const object = {
"key-with-dash": []
}
La déstructuration ne fonctionne pas dans ce cas car key-with-dash
n'est pas un nom de variable valide.
const { key-with-dash } = object;
Une question m'est donc venue à l'esprit. Comment suis-je censé détruire l'objet dans de tels cas? Est-ce même possible du tout?
const data = {
"key-with-dash": ["BAZ"]
}
const {"key-with-dash": foo} = data;
console.log("foo", foo);
Donnez-lui juste un nom valide
let object = { 'key-with-dash': [] }
let {'key-with-dash':y} = object
console.log(y)
// => []
Saviez-vous également que vous pouvez déstructurer avec des variables?
let object = { 'key-with-dash': [] }
let key = 'key-with-dash'
let {[key]:y} = object
console.log(y)
// => []