Карта над массивом, завернутым в Maybe

Как мне отобразить массив, завернутый в Maybe или любую другую монаду? Щас пользуюсь

const map2 = curry(
  (fn, xs) => map(map(fn))(xs)
)
const data = [1, 2]
pipe(
  Maybe, 
  map2(add(1))
)(data)

0 ответов

Трудно понять, потому что непонятно, почему вам нужно обернуть массив в файл Maybe. Это массив, который может отсутствовать, или значения в массиве? Поскольку вы хотите отобразить массив, кажется, что значения в массиве могут отсутствовать, и в этом случае вам действительно нужен массив maybes.

По сути, ваше решение - это правильный способ дважды отобразить карту, но это редко требуется при работе с рекламными объявлениями.

Одна вещь, которая приходит мне в голову сразу же, - это свернуть список возможных значений со значением по умолчанию для пустого массива, а затем просто сопоставить это обычно. Вывод заключается в том, что когда вам нужно дважды отобразить карту, вам, вероятно, следует попытаться переформулировать свой подход.

Другие вопросы по тегам