Вопрос №362 от пользователя Ilhom в уроке «Аргументы, область видимости и hoisting в JavaScript», курс «Введение в Javascript»
Имею трудности в прохождение arguments_test.js задании. Не могу в какую сторону копать. Дайте немного наводки. Спасибо.
Доброго времени суток! Для начала стоит немного прочитать про https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments потом понять что это почти как массив и с ним можно работать как с массивом
Прочитал. Но все равно не получаеться.. Попробывал даже взять за основу примеры статье по ссылки. Что-то не осилил.
А что вы пытаетесь сделать, и что конкретно у вас не получается? Можете скинуть сюда ваш код?
Вот мой код:
function sentencer(){
// BEGIN
var i = 0,
concat;
for (i = 0; i < arguments.length; i++) {
concat += " " + arguments[i];
}
return concat;
// END
}
Все хорошо за исключением одного момента: у вас полученное предложение начинается с пробела. Нужно сделать дополнительную проверку – когда вы добавляете в пустое предложение первое слово, то пробел перед ним ставить не нужно.
Еще одно дополнение - у вас переменная concat не инициализирована. *var concat = ""; * В вашей реализации, я подозреваю, что полученная строка начинается с "undefined ". Попробуйте проинициализировать переменную.
P.S. сокращенный вариант правильного решения:
function sentencer() {
return Array.prototype.slice.call(arguments).join(" ");
}
@Алексей Франк в доках он есть, зачем сюда постить было?)
Есть для меня две-три магии: — setTimeout({},0); и — (function(){})(); — function(a,b, callback){};
Вторая магия показана в уроке в ~8:50 и Рахим как-то обошелся без лишних терминов. Искать "это" непонятно где и как. Как эта магия называется? Где про это написано?
Спасибо.
Используйте Хекслет по максимуму!
- Задавайте вопросы по уроку
- Проверяйте знания в квизах
- Проходите практику прямо в браузере
- Отслеживайте свой прогресс
Зарегистрируйтесь или войдите в свой аккаунт
С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.







