@Forum_0

Застряла на задании в коде JS Яндекс.Практикум. Что не так?

Задание:
В конце скрипта примените к телу HTML-документа фоновый цвет, значение которого — результат вызова функции makeColorString(r, g, b) с параметрами red, green и blue. Строка с подобным вызовом сейчас последняя в script.js.

var red = 255;
var green = 0;
var blue = 0;
var bgValue = 'rgb(' + red + ', ' + green + ', ' + blue + ')';
console.log(bgValue);
var red = prompt('Введите насыщенность цвета в виде числа от 0 до 255', '255');
var green = prompt('Введите насыщенность цвета в виде числа от 0 до 255', '0');
var blue = prompt('Введите насыщенность цвета в виде числа от 0 до 255', '0');
function checkInput(i) {
  i = Number(i);
function makeColorString (r, g, b) {
var bgValue = 'rgb(' + i + ', ' + g + ', ' + b + ')';
return(bgValue);
console.log (i + b);
console.log ('Вы определили насыщенность цвета как ' + i);
}
  return i
}
red = checkInput(red);
green = checkInput(green);
blue = checkInput(blue);
document.write(makeColorString(red, green, blue));


Вставляю в самый низ (есть подсказка для дураков, вставить эту строку):
document.body.style.backgroundColor = makeColorString(red, green, blue);

Выдает: "функция makeColorString возвращает неправильный результат"
  • Вопрос задан
  • 1038 просмотров
Пригласить эксперта
Ответы на вопрос 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
А давайте просто запишем ваш код с нормальными отступами
function checkInput(i) {
  i = Number(i);
  function makeColorString (r, g, b) {
    var bgValue = 'rgb(' + i + ', ' + g + ', ' + b + ')';
    return(bgValue);
    console.log (i + b);
    console.log ('Вы определили насыщенность цвета как ' + i);
  }
  return i
}

Ничего странного не замечаете? Почему у вас функция определяется внутри другой функции? Зачем после возврата из функции стоят строки вывода в консоль?
Ответ написан
@mad_god
function makeColorString (r, g, b) {
var bgValue = 'rgb(' + i + ', ' + g + ', ' + b + ')';

вместо i - r не пробовали? Почему там i ?
Ответ написан
@Forum_0 Автор вопроса
В предыдущих заданиях нужно было написать функцию в функции. я не знаю зачем у меня после возврата из функции стоят строки вывода в консоль ))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы