Вот код, о котором идет речь:
Object.entries({
orderStatus: null,
orderType: null,
limit: 25,
offset: null,
sortFields: null
}).reduce((acc, [a, b]) => b ? acc[a] = b : acc, {});
console.log показывает, что первый раз установлен acc[a]
, он просто заменяет acc
на строку в a
, затем пытается назначитьсвойство acc
(которое теперь является строкой) и выдает ошибку TypeError.Когда я использую:
.reduce((acc, [a, b]) => b ? {...acc, ...{[a]: b}} : acc, {});
, это работает как сон.Зачем acc[a]
устанавливать acc
в 25, когда оно достигает limit
?не должно ли это быть таким же, как acc["limit"] = 25
?