Мне нужно доработать функцию!

У меня есть код:

  String.prototype.chunk = function(length) {
    return this.trim().replace(/\s*\n\s*/g,"\n").match(new RegExp('[^]{1,' + +length + '}', 'g'));
  }

Иногда случается так что он делит вот так:

введите сюда описание изображения

А мне нужно вот так(Есть если в конце есть \n то строка не разделялась,а переносила текст на следующий индекс массива ):

emojis:[GuildEmojiManager]}

Возможно ли так сделать?


Ответы (1 шт):

Автор решения: Sergei Kirjanov

Делите на строки const lines = ... split("\n"), добавляя обратно "\n" всем кроме одной, и деля большие line вашей старой функцией (в flatMap).

const result = []

Делаете в обычном цикле для каждой line:

  • или + к последней группе в result
  • или push новой группы (если превышен размер)
→ Ссылка