我正在上一个codecademy.com课程,我应该检查一个数字是3或5的倍数(但不是3和5的倍数),根据结果返回true或false测试。如果不满足任何一个条件,该方法也应该返回false。
当我运行代码时,它告诉我存在语法错误:意外令牌。谁能看到我做错了什么?
var FizzBuzzPlus = {
this.isFizzBuzzie = function(number){
if (number % 3 === 0 && number % 5 === 0){
return false;
}else if (number % 3 === 0 || number % 5 ===0){
return true;
}else{
return false;
}
};
};
答案 0 :(得分:4)
这应该有效:
var FizzBuzzPlus = {
isFizzBuzzie: function(number){
if (number % 3 === 0 && number % 5 === 0){
return false;
}else if (number % 3 === 0 || number % 5 ===0){
return true;
}else{
return false;
}
}
};
答案 1 :(得分:1)
有点偏离主题,但最好只评估3和5的模数一次:
var FizzBuzzPlus = {
isFizzBuzzie : function(number){
var d3 = number % 3 === 0;
var d5 = number % 5 === 0;
if (d3 && d5){
return false;
}else if (d3 || d5){
return true;
}else{
return false;
}
}
};
for (var i = 0; i <= 25; i++){
console.log(i + ": " + FizzBuzzPlus.isFizzBuzzie(i));
}