使用下面的對象和方法,console.log(FizzBuzzPlus.getFizzBuzzCount(20))
爲什麼打印0?爲什麼方法返回0?
var FizzBuzzPlus = {
isFizzBuzzie: function(a) {
if(a%5 === 0 || a%3 === 0) {
if (a%5 === 0 && a%3 === 0) {
return false;
}
return true;
} else {
return false;
}
},
isFizzBuzzieChecker: function(c) {
var theFizzBuzzes = [];
for (var i = 0; i < c; i++) {
if (this.isFizzBuzzie(i)) {
theFizzBuzzes += i + " ";
}
}
return theFizzBuzzes;
},
getFizzBuzzSum: function(b) {
var sum = 0;
for (var i = 0; i < b; i++) {
if (this.isFizzBuzzie(i)) {
sum += i;
}
}
return sum;
},
getFizzBuzzCount: function(c) {
var count = 0;
for (var i = 0; i < c; i++) {
if (this.isFizzBuzzie(i)) {
count++;
}
return count;
}
}
};
console.log(FizzBuzzPlus.isFizzBuzzieChecker(20));
console.log(FizzBuzzPlus.getFizzBuzzSum(20));
console.log(FizzBuzzPlus.getFizzBuzzCount(20));
有些人可能會認識到這是來自Codecademy的FizzBuzz。我正在使用他們的在線JavaScript編輯器玩這個對象。該方法的打印結果始終爲0.它應返回0和20之間的數字,可被3或5整除,但不能同時爲3和5.
謝謝。語法錯誤是原始代碼中沒有的錯字。移動返回語句。現在工作正常。 – 2013-04-24 01:22:30
你應該修正你的問題,然後打字錯誤;) – Jace 2013-04-24 01:26:08
好點...完成。 – 2013-04-24 01:28:32