Фигурные скобки внутри параметров JavaScript для функций
Что делают фигурные скобки, окружающие параметры JavaScript для функций?
var port = chrome.extension.connect({name: "testing"});
port.postMessage({found: (count != undefined)});
Ответы
Ответ 1
В фигурных скобках обозначается объектный литерал. Это способ отправки пар ключей/значений данных.
Итак, это:
var obj = {name: "testing"};
Используется для доступа к данным.
obj.name; // gives you "testing"
Вы можете дать объекту несколько разделенных запятыми пары ключ/значение, если ключи уникальны.
var obj = {name: "testing",
another: "some other value",
"a-key": "needed quotes because of the hyphen"
};
Вы также можете использовать квадратные скобки для доступа к свойствам объекта.
Это потребовалось бы в случае "a-key"
.
obj["a-key"] // gives you "needed quotes because of the hyphen"
Используя квадратные скобки, вы можете получить доступ к значению, используя имя свойства, хранящееся в переменной.
var some_variable = "name";
obj[ some_variable ] // gives you "testing"
Ответ 2
Второй возможный ответ возник, так как этот вопрос был задан. Javascript ES6 представил назначение уничтожения.
var x = function({ foo }) {
console.log(foo)
}
var y = {
bar: "hello",
foo: "Good bye"
}
x(y)
Result: "Good bye"
Ответ 3
Вставные фигурные скобки в javascript используются как стенография для создания объектов. Например:
// Create an object with a key "name" initialized to the value "testing"
var test = { name : "testing" };
alert(test.name); // alerts "testing"
Подробнее см. Douglas Crockford Обзор JavaScript.
Ответ 4
var x = {title: 'the title'};
определяет литерал объекта, который имеет на нем свойства. вы можете сделать
x.title
который будет оценивать "заголовок";
это общий метод передачи конфигураций методам, что и происходит здесь.