第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我在實際想要的東西之后得到一個“未定義”的行?

為什么我在實際想要的東西之后得到一個“未定義”的行?

炎炎設(shè)計 2022-08-04 09:53:07
劇透警告:我正在發(fā)布HackerRank的“樓梯”問題的解決方案。所以,我試圖解決初學(xué)者的挑戰(zhàn),用JS打印梯子。我必須編寫一個函數(shù),該函數(shù)根據(jù)作為參數(shù)輸入的步驟數(shù)打印梯子。例如:stairs(4)應(yīng)該返回   #  ## #######我得到了這個代碼,雖然它基本上沒問題,但我最終得到了一個“未定義”的行。所以:function staircase(n) {    var stair=[]; /*array of strings */    for (var i=1; i <=n; i++){        var step= " ".repeat(n-i).concat("#".repeat(i));        stair.push(step);    }    for (var i=0; i<=stair.length; i++){        console.log(stair[i])    }}當(dāng)樓梯 (6) 運行時, 它返回以下內(nèi)容:     #    ##   ###  #### ###########undefined困擾我的是“未定義”這個詞,它阻止我提交slution。我只猜測一個可能的解決方案是替換第二個for循環(huán)聲明中的“<=”,簡單地表示“<”,這就做到了:function staircase(n) {    var stair=[]; /*array of strings */    for (var i=1; i <=n; i++){        var step= " ".repeat(n-i).concat("#".repeat(i));        stair.push(step);    }    for (var i=0; i<stair.length; i++){        console.log(stair[i])    }}當(dāng)我運行樓梯(6)時,它會返回它應(yīng)該返回的內(nèi)容:     #    ##   ###  #### ###########雖然問題解決了,但我不明白為什么。我的問題是:為什么“未定義”一詞出現(xiàn)在第一種情況下,為什么我所做的替換修復(fù)了它?感謝!
查看完整描述

4 回答

?
弒天下

TA貢獻(xiàn)1818條經(jīng)驗 獲得超8個贊

給定它的數(shù)組將具有 .[1, 2, 3]length3

  • foo[0]1

  • foo[1]2

  • foo[2]3

既然你然后記錄哪個是... .3 <= array.lengthfoo[3]undefined


查看完整回答
反對 回復(fù) 2022-08-04
?
慕容708150

TA貢獻(xiàn)1831條經(jīng)驗 獲得超4個贊

當(dāng)您在 for 循環(huán)中使用 i<=n 運行 staircase(6) 時,在上一次迭代中,您正在訪問第六個索引處的元素,該元素不存在,因此它是未定義的。數(shù)組索引從 0 開始,因此對于 staircase(6),索引最多只能達(dá)到 5。


查看完整回答
反對 回復(fù) 2022-08-04
?
慕標(biāo)5832272

TA貢獻(xiàn)1966條經(jīng)驗 獲得超4個贊

第一個循環(huán)從 1 到 n(n 次迭代)運行


for (var i=1; i <=n; i++){

        // statements

}

而第二個循環(huán)從 0 到 n(總共 n+1 次迭代)


for (var i=0; i<=stair.length; i++){

        console.log(stair[i])

}

由于樓梯中只有 n 個值,因此在第 n 次 + 1 次迭代中,將返回未定義。


查看完整回答
反對 回復(fù) 2022-08-04
?
慕妹3146593

TA貢獻(xiàn)1820條經(jīng)驗 獲得超9個贊

你應(yīng)該在數(shù)組上運行,直到像這樣:stairi < stair.length


function staircase(n) {


  var stair=[]; /*array of strings */


  for (var i=1; i <=n; i++){

      var step= " ".repeat(n-i).concat("#".repeat(i));

      stair.push(step);


  }

  for (var i=0; i<stair.length; i++){

      console.log(stair[i])

  }

}


staircase(6)

根據(jù)MDN的說法:


JavaScript 數(shù)組的索引為零:數(shù)組的第一個元素位于索引 0 處,最后一個元素的索引等于數(shù)組的 length 屬性值減去 1。


查看完整回答
反對 回復(fù) 2022-08-04
  • 4 回答
  • 0 關(guān)注
  • 120 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號