Павел Корнилов, насчёт "очевидности" очень спорно. Я и мои коллеги использую деконструктор везде, где только можно, за редкими исключениями, и поэтому лично для меня оба этих способа очевидны, а я не думаю, что я такой уникальный.
WbICHA, если вы и ваши коллеги не задумываясь, используете деструктурирующее присваивание - совсем не значит, что вы поступаете правильно. Посмотрите примеры выходного байт-кода для обоих вариантов.
На большом объеме данных почти наверняка ваш код отработает сильно медленнее, чем вариант Павел Корнилов .
Это во-первых.
Во-вторых, ваш код просто менее читаем и хуже воспринимается визуально. Если так хочется писать машинный код - возьмите сразу Ассемблер. Высокоуровневые языки - для людей, а не для машин, не забывайте об этом)
Absolute138, извините, но вы смотрели ЧТО там сравнивается?
function add(number1, number2){
return number1 + number2;
}
// vs
function add({number1, number2}){
return number1 + number2;
}
И где же в первом примере работа с объектом?
Естествено вызов функции с двумя числами в аргументах будет всегда медленнее, чем вызов функции с объектом, к которому далее идёт обращение.
Сравнение должно быть таким:
function add({number1, number2}){
return number1 + number2;
}
// vs
function add(obj){
return obj.number1 + obj.number2;
}
Я разочарован, я надеялся увидеть пруф, а не оффтоп.
ваш код просто менее читаем и хуже воспринимается визуально.
Опять субъективное восприятие выдаётся за объективное. Вам труднее его читать с подсветкой синтаксиса (без него, конечно, хуже)? Мне ─ нет.
WbICHA, мы сейчас с тобой гадаем что хотел топикстартер.
Моя мысль заключается в том что он не знает все поля которые лежат внутри params и он хочет их посмотреть.