У меня возникла проблема с приведенным ниже кодом. Консоль говорит мне, что строка 27 не работает. Не знаю почему. Этот код должен быть простым выражением fizzbuzz if, который по какой-то причине работает некорректно. Не могли бы вы посоветовать?
$(document).ready(function()
function get_Value (i){
if (i % 3 === 0 & i % 5 ===0)
{
return "FizzBuzz";
}
else if (i % 3 === 0)
{
return "Fizz";
}
else if (i % 5 === 0)
{
return "Buzz";
}
else
{
return i;
}
}
}
$('#getNumber').click(function() {
var numInput = $('#numInput').val();
var value = get_Value(numInput);
$('.Buzz ul').append('<li>' + value + '</li>');
numInput.val('').focus();
});
});
У вас есть синтаксические ошибки. Вот ваш правильный код:
$(document).ready(function () { // brace missing here
function get_Value(i) {
if (i % 3 === 0 && i % 5 === 0) { // && logical operator
return "FizzBuzz";
} else if (i % 3 === 0) {
return "Fizz";
} else if (i % 5 === 0) {
return "Buzz";
} else {
return i;
}
}
// a brace was hanging here
$('#getNumber').click(function () {
var numInput = $('#numInput').val(); // val is string
numInput = parseInt(numInput, 10); // parse in integer
var value = get_Value(numInput);
$('.Buzz ul').append('<li>' + value + '</li>');
$("#numInput").val('').focus(); // the object, not its value
});
});
при инициализации переменная numInput
не является входным текстом. это скорее val()
. вы должны сделать это по строке 27.
$('#numInput').val('').focus();
if (i % 3 === 0 & i % 5 ===0)
наif (i % 3 === 0 && i % 5 ===0)