Oi, eu sempre tenho dúvidas de como tratar dados, pegar um array e transformar em objeto e vice-versa. Essa é uma necessidade que eu senti ao estudar react principalmente, que recebe dados da API e precisa filtrar, adicionar ou deletar dados.
Onde eu posso estudar mais respeito, exemplos:
function makeObj (items) {
const newObj = {}
for (let i = 0; i < items.length; i++) {
const item = items[i]
const itemId = item.id
newObj[itemId] = item
}
return newObj
}
function postsById (state = {}, action) {
switch (action.type) {
case RECEIVE_POSTS:
case GET_POSTS_BY_CATEGORY:
return { ...state, ...makeObj(action.posts) }
Esse reduce, já vi algumas vezes, como e porque deve ser utilizado?
const allIngredients = recipes.reduce(
(ingredients, recipe) => [
...ingredients,
...recipe.ingredients.filter(
ingredient => !ingredients.includes(ingredient),
),
],
[],
);