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

Что делают фигурные скобки внутри списков параметров функции в es6?

Я вижу функции, которые выглядят так в кодовой базе, над которой я работаю:

const func = ({ param1, param2 }) => {
  //do stuff
}

Что именно это делает? Мне сложно найти его в Google, потому что я даже не уверен, что это называется, или как описать его в поиске Google.

4b9b3361

Ответ 1

Это destructuring, но содержится в параметрах. Эквивалент без деструктурирования будет:

const func = o => {
    var param1 = o.param1;
    var param2 = o.param2;
    //do stuff
}

Ответ 2

Это передача объекта как свойства.

Это в основном сокращение для

let param1 = someObject.param1
let param2 = someObject.param2

Другой способ использования этого метода без параметров заключается в следующем: давайте на секунду рассмотрим, что someObject содержит эти свойства.

let {param1, param2} = someObject;