Условие:
Обрезание c учетом слов
Реализуй функцию shortenByWords(s, n).
Она должна принять строку и число.
Вернуть нужно новую строку, состоящую максимум из n символов оригинальной строки.
Если тебе нужно обрезать несколько символов, добавь ... в конце.
Нельзя обрезать строку посередине слова, поэтому включай в результат только полные слова
Так, shortenByWords('this string is too long to fit our ad', 21) вернет this string is too...
Мой код;
export const shortenByWords = (s, n) => {
let s1 = s.split("")
let g =[]
let z = []
if (s1.length <= n) {
return s
}
else{
for (let i = 0; i <= n-1; i++) {
g.push(s1[i])
}
for (let r = g.length-1; r > 0; r--) {
if (g[r]===" ") {
for (let r1 = 0; r1 < r; r1++) {
z.push(g[r1])
}
z.push("...")
return z.join("")
}
else{
g[r] = ""
}
}
}
}
Ошибка:
НЕТ 1. Функция shortenByWords должна возвращать строку
ДА2. Строку нельзя изменять, если n больше или равно ее длине.
НЕТ3. Результат должен включать только полные слова
НЕТ4. Результат должен заканчиваться на ..., если исходная строка должна быть сокращена