undefined从何而来?我想我正确地初始化了字符串。(尝试使用调试器,但无法解决问题)
我尝试使用concat()
方法。我试过+=。所有结果都是“undefined”
为什么?
const reverseString = function(string) {
let newWord = "";
for (i = string.length; i > -1; i--) {
newWord = newWord.concat(string[i]);
}
return newWord
};
编辑:如果运行console.log(reverseString("Hello"))
时不清楚
预期输出为“olleH”
实际输出为“undefinedolleH”
2条答案
按热度按时间8oomwypt1#
正如@VLAZ在评论中提到的,你的string.length大于字符串的实际长度,这就是为什么它会跳出数组。
有很多方法可以消除字符串中的undefined。一个是VLAZ所说的,它只是长度。另一个是在串联上使用空合并运算符。以下样品
ycl3bljg2#
索引应该从(n-1)开始,而不是从n开始