2016-10-03 2 views
14

Как разрушить свойство объекта, в котором ключ содержит дефис?Как разрушить объект с ключом, содержащим дефис в переменную?

Например:

{ 
    accept-ranges:"bytes", 
    cache-control:"public, max-age=0", 
    content-length:"1174", 
    content-type:"application/json", 
    date:"Mon, 03 Oct 2016 06:45:03 GMT", 
    etag:"W/"496-157892e555b"", 
    last-modified:"Mon, 03 Oct 2016 06:14:57 GMT", 
    x-powered-by:"Express" 
} 

Теперь, чтобы получить content-type и x-powered-by значения из объекта с помощью деструктурирующие?

+0

Я запутался, вы говорите, что нужно из массива - пока вы указали объект. Что он? Массив объектов и т. Д.? –

+0

Извините, мой плохой, опечатка. – Sathish

+0

Обычная опечатка! Ключи, вроде, рядом друг с другом^_ ^ –

ответ

17

Так же, как вы не можете объявить переменную с дефисом, вы не можете разрушить ее напрямую. Вам нужно будет переименовать переменную в другое, чтобы получить доступ к ней в текущей области. Вы можете использовать следующий синтаксис деструктурирующие сделать:

const x = { 
 
    "accept-ranges":"bytes", 
 
    "cache-control":"public, max-age=0", 
 
    "content-length":"1174", 
 
    "content-type":"application/json", 
 
    date:"Mon, 03 Oct 2016 06:45:03 GMT", 
 
    etag:"W/496-157892e555b", 
 
    "last-modified":"Mon, 03 Oct 2016 06:14:57 GMT", 
 
    "x-powered-by":"Express" 
 
}; 
 
const { "accept-ranges": acceptRanges } = x; 
 
console.log(acceptRanges); // "bytes"

Смежные вопросы