Есть ли способ деструктурировать объект JS на месте, вместо присвоения деструктурированных переменных области действия?
Вместо этого:
const { a, b, c } = obj;
someFunction(a, b, c);
Я бы хотел сделать это:
someFunction({a, b, c} from obj);
Или что-то функционально эквивалентное.
Я хотел бы сделать это в ситуациях с этими двумя условиями:
Я не хочу помещать имена переменных во вложенную область видимости.
Я не хочу передавать весь объект obj
, поэтому оператор спреда не является опцией.
Единственная опция, с которой я остаюсь - это использовать
someFunction(obj.a, obj.b, obj.c);
Это нормально в этом случае, но может снизить читабельность, если вместо obj
указан длинный идентификатор.
Возможно ли что-то подобное? Я пытался использовать присваивание в выражении в качестве обходного пути, но моя среда IDE жаловалась, что не может найти имена a
, b
и c
:
someFunction({a, b, c} = obj);