JS作業(yè)

作業(yè)要求及代碼

/*

FizzBuzzWhizz 需求:

when run(3) return 'Fizz'

when run(5) return 'Buzz'

when run(7) return 'Whizz'

when run(3 * 5) return 'FizzBuzz'? //run 的參數為 3和5共同的倍數

when run(3 * 7) return 'FizzWhizz'? //run 的參數為 3和7共同的倍數

when run(5 * 7) return 'BuzzWhizz'? //run 的參數為 5和7共同的倍數

when run(3 * 5 * 7) return 'FizzBuzzWhizz'? //run 的參數為 3、5和7共同的倍數

其余情況:

when run(n) return n? // n 可以為 非 3、5、 7或3、5、7的倍數的數字 如:run(2) return '2'

作業(yè)要求:

1.通過document.write()方法,將以上需求的每一條調用結果打印出來,結果會在屏幕右邊顯示

2.為每一條需求寫一個測試,測試例子請見實例方法 test1

*/

function run(num) {

if (num == 3){

return 'Fizz';

}

else if (num == 5){

return 'Buzz'

}

else if (num == 7){

return 'Whizz'

}

else if (num % 3 == 0 && num % 5 == 0 && num % 7 == 0){

return 'FizzBuzzWhizz'

}

else if (num % 3 == 0 && num % 5 == 0){

return 'FizzBuzz'

}

else if (num % 3 == 0 && num % 7 == 0){

return 'FizzWhizz'

}

else if (num % 5 == 0 && num % 7 == 0){

return 'BuzzWhizz'

}

else{

return num.toString();

}

}

var test1 = function() {

let result = run(2);

if(result != 2) {

document.write('The test 1 failed')

}else {

document.write('The test 1 result is : '+ result)

}

}

test1()

var test2 = function(){

let result = run(3);

if(result != 'Fizz'){

document.write('The test 2 failed')

}

else{

document.write('The test 2 result is : ' + result)

}

}

test2()

var test3 = function(){

let result = run(5);

if(result != 'Buzz'){

document.write('The test 3 failed')

}

else{

document.write('The test 3 result is : ' + result)

}

}

test3()

var test4 = function(){

let result = run(7);

if(result != 'Whizz'){

document.write('The test 4 failed')

}

else{

document.write('The test 4 result is : ' + result)

}

}

test4()

var test5 = function(){

let result = run(15);

if(result != 'FizzBuzz'){

document.write('The test 5 failed')

}

else{

document.write('The test 5 result is : ' + result)

}

}

test5()

var test6 = function(){

let result = run(21);

if(result != 'FizzWhizz'){

document.write('The test 6 failed')

}

else{

document.write('The test 6 result is : ' + result)

}

}

test6()

var test7 = function(){

let result = run(35);

if(result != 'BuzzWhizz'){

document.write('The test 7 failed')

}

else{

document.write('The test 7 result is : ' + result)

}

}

test7()

var test8 = function(){

let result = run(105);

if(result != 'FizzBuzzWhizz'){

document.write('The test 8 failed')

}

else{

document.write('The test 8 result is : ' + result)

}

}

test8()


出現的問題:

第一次用js寫代碼,找了不少例子來看,而且不太熟悉jsfiddle的run方法,寫test3的時候沒有運行,當時還找了很久,才發(fā)現是test2里的write寫錯了,導致異常退出。

解題方法:

我先根據題目給的幾種情況,寫出了測試和簡單的run函數,編譯通過,之后調整run函數中判斷的位置,可以讓測試數據變化之后正常輸出,先判斷是否為3,5,7三個數,之后判斷是否為三個數的公倍數,再判斷是否為其中兩個數的公倍數,最后else返回原數

心得與收獲

1.接觸一個編譯器,一定要先看使用方法,不要直接上代碼

2.了解了用js寫一個小程序的大致方法

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容