"из нот э фанкшен". Объясните почему у аргумента который передаётся в функцию нельзя вызвать методы ? Например передаётся строка и я не могу сделать вот так str.forEach()
Видимо потому, что строку сначала нужно преобразовать в массив
строка это и есть массив символов
Строка это строка, если тебе нужно проитерировать символы, то ‘helloworld’.split(‘’).forEach(console.log)
Именно поэтому ты и получаешь ошибку
получается что нужен только цикл фор ?
то есть отсюда можно сделать вывод, что если работаешь со строкой использовать цикл не форич
ещё такой вопросик смотри предположим я воспользовался методом мэп и сгенерировал новый массив. потом я сразу взял у этой переменной у который вызывал метод мэп после генерации нового массива я вызываю метод сорт и получаю ту же ошибку 'is not a function' неужели для того чтобы как-то взаимодействовать с новым массивом который сгенерировался от мэп мне нужно создавать пустой и присваивать туда значения мэп чтобы у меня были доступны методы ?
function descendingOrder(n){ let newNum = '', arr = []; arr = n.toString().split('').map(Number); arr.sort((a,b) => b - a); arr.forEach(item => { newNum += item; }) return +newNum; } Вот код он полностью рабочий. Эта функция получает число 65238, а возвращает 86532 n.toString().split('').map(Number); эта строчка кода соответственно разделяет число 65238 на элементы массива [6, 5, 2, 3, 8] так как мэп вернул новый массив, почему я не могу сделать так n.sort((a,b) => b - a); ?
зачем так сложно
последнтий же метод вернёт массив разве нет ?
Обсуждают сегодня