Javascript 为什么我会得到一个;“未定义”;我真正想要的是什么?
剧透警告:我发布了一个解决方案的问题“楼梯”的黑客银行。 所以,我试图解决一个初学者的挑战,用JS打印一个梯子。我必须编写一个函数,根据作为参数输入的步数打印阶梯。例如:Javascript 为什么我会得到一个;“未定义”;我真正想要的是什么?,javascript,undefined,Javascript,Undefined,剧透警告:我发布了一个解决方案的问题“楼梯”的黑客银行。 所以,我试图解决一个初学者的挑战,用JS打印一个梯子。我必须编写一个函数,根据作为参数输入的步数打印阶梯。例如: stairs(4) 应该回来 # ## ### #### 我得到了这段代码,虽然基本上还可以,但最后我得到了一行“未定义”。因此: function staircase(n) { var stair=[]; /*array of strings */ for (var i=1; i <
stairs(4)
应该回来
#
##
###
####
我得到了这段代码,虽然基本上还可以,但最后我得到了一行“未定义”。因此:
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])
}
}
困扰我的是“未定义”这个词,它使我无法提交该声明。我只是猜测一个可能的解决方案是替换“给定一个
[1,2,3]
数组,它的长度将为3
foo[0]
is1
foo[1]
is2
foo[2]
is3
因为3你应该在stair
数组上运行,直到i
如下:
功能楼梯(n){
var stair=[];/*字符串数组*/
对于(var i=1;i您的第一个循环从1运行到n(n次迭代)
for(var i=1;i当您使用等于stairs.length的iIndex运行楼梯(6)时。数组中的最后一个索引将是stairs.length-1,因为您是从索引号“0”开始的。`i
#
##
###
####
#####
######
undefined
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])
}
}
#
##
###
####
#####
######
for (var i=1; i <=n; i++){
// statements
}
for (var i=0; i<=stair.length; i++){
console.log(stair[i])
}