#javascript #const
Увидел в описании использования одного из npm-пакетов запись вида const { NAME } = value. В JavaScript не профи, так что никак не могу понять/найти зачем эти скобки вокруг имени переменной и чем тогда это отличается от обычного const NAME = value?
Ответы
Ответ 1
Это называется деструктуризация, используется для более короткой записи const {name} = value; // value = {name: ''} name; // '' // то же самое что и const name = value.name; Можно использовать в параметрах функции const foo = ({prop}) => {} foo({prop: 'prop'}); Для возвращения нескольких параметров из функции const foo = () => ({var1: 1, var2: 2}) const {var1, var2} = foo(); Важно: имена переменных должны совпадать с ключами в объекте const {name} = {prop: 1}; // name = undefined // но если очень хочется:) const {prop: name} = {prop: 1}; // name = 1 Так же работает с массивами const [a, b] = [1, 2, 3, 4]; // a = 1, b = 2 Вот как теперь можно обменять значения двух переменных let a = 1, b = 0; [a, b] = [b, a];
Комментариев нет:
Отправить комментарий