Имея этот код
const myMagic = (one, two, three, four) => `this is ${one} and ${two} and ${three} and ${four} as usual`
const txt = 'HELLO&ho&hy&hu&hq&HELLO&ho&hy&hu&hq&HELLO&ho&hy&hu&hq&HELLO&ho&hy&hu&hq&hx'
const fragments = txt.split('&')
const pieces = []
for (let i=0; i<fragments.length-1;i +=5) {
pieces.push(fragments[i])
pieces.push(myMagic(fragments[i+1],fragments[i+2],fragments[i+3],fragments[i+4]))
}
pieces.push(fragments[fragments.length-1])
console.log(pieces)
Как я могу преобразовать его в более декларативную версию?
Код такой, так как разделение принимает регулярное выражение, которое анализирует текст только один раз, а затем с помощью этих фрагментов я создаю столько компонентов, сколько необходимо, с помощью функции myMagic
Итак, есть ли способ написать это более декларативно, не изменяя логику?