Подтвердить что ты не робот

Фигурные скобки внутри параметров JavaScript для функций

Что делают фигурные скобки, окружающие параметры JavaScript для функций?

var port = chrome.extension.connect({name: "testing"});
port.postMessage({found: (count != undefined)});
4b9b3361

Ответ 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 

который будет оценивать "заголовок";

это общий метод передачи конфигураций методам, что и происходит здесь.