[MTR04] W2 D13 練習三:寫一個能夠印出 n 個 * 的函式


Posted by Christy on 2020-07-18

練習三:寫一個能夠印出 n 個 * 的函式

function star(n){
 var a = "*"
 for (i = 1; i<=n; i++){
    console.log(a)
 }
 return a = a * "*"
}  

star(5)

正確的程式碼應該是:

function star(n){
    var a = ""
    for (var i = 1; i<=n; i++){  
    a = a + '*'
    }
console.log(a)
}  
   star(5)

沒想到我居然可以靠自己寫出來!好感動,嗚嗚嗚,但這個程式碼有個問題是,他出星星的時候,沒辦法排成一行,在 VsCode 裡面跑是一行一個星。


發問以後,Huli 說上面的程式碼有幾個問題:

  1. js 字串沒有乘法的用法,但其實乘法就是很多的加法,
    a = a * "*" 應該是要寫成 a = a + "*"

  2. var a = "*",這裡應該寫成 var a = "",不然跑的時候會多出一個星,變數是一個盒子,我只是把星星放進去

  3. 寫一個函式,不見得最後一定要接呼叫那個函式,可以用 console.log 印出










Related Posts

 [Node.js] call back queue運作機制

[Node.js] call back queue運作機制

API 是什麼?

API 是什麼?

[BE101] 初探 PHP

[BE101] 初探 PHP


Comments