簡體   English   中英

無法弄清楚為什么我的 JavaScript for loop 只循環一次

[英]Can't figure out why my JavaScript for loop only loops once

我試圖讓我的 for 循環單獨打印字符串參數的每個字符,但是當我運行代碼時,它只打印第一個字符。 我似乎無法弄清楚為什么它不繼續循環。

這是我的代碼:

function reverse (param) {
    for (var i=0; i<arguments.length; i++) {
        console.log(param.charAt(i));
    }
}

reverse("Test");

此代碼正在正常工作。 arguments長度為 1。要使其按預期工作,您必須使用param的長度

 function reverse (param) { console.log(arguments) for (var i=1; i<=param.length; i++) { console.log(param.charAt(param.length - i)); //you need to correct here as well } } reverse("Test");

另一方面,您也可以使用.reverse function。 但它適用於 arrays。 所以你可以做這樣的事情:

 console.log("Test".split('').reverse().join(''))

因為 arguments 只包含 ["Test"],所以 arguments.length 為 1

因為您需要參數長度而不是 arguments。

function reverse (param) {
    for (var i=0; i<param.length; i++) {
        console.log(param.charAt(i));
    }
}

reverse("Test");
function printLetters(string) {
    for (let letter of string) {
        console.log(letter);
    }
}
printLetters("test");

這是將字母打印到控制台的方法

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM