Свойства JavaScript имеют имена, как вы знаете.Если имя является юридическим идентификатором, и вы знаете буквальное имя, которое вы хотите при написании кода, вы можете использовать его с точечной нотацией.
var foo = headers.foo;
Когда имя не является юридическим идентификаторомили если вы хотите определить имя, которое вы ищете во время выполнения, вы можете использовать строку:
var encoding = headers['content-encoding'];
или
var name = 'content-encoding';
var encoding = headers[name];
или даже
var x = 'encoding';
var encoding = headers['content-' + x];
Как видите, это не обязательно должна быть литерал строка.Это очень удобно для функций общего назначения, которые должны принимать имя свойства в качестве аргумента функции или аналогичное.
Обратите внимание, что имена свойств чувствительны к регистру.