javascript - 8.14.4:求和网格 CodeHS
问题描述
这就是问题所在:(这是 JavaScript)
写一个函数叫
函数 sumGrid(grid) 将网格作为参数,并用该位置的行索引和列索引之和填充网格中的每个位置。
例如,这段代码:
var grid = new Grid(2, 3);
println(sumGrid(grid));
应该输出:
0 1 2
1 2 3
这是我到目前为止得到的...
function start(){
var grid = new Grid(2, 3);
println(sumGrid(grid));
}
function sumGrid(grid){
for(var row = 0; row < grid.numRows(); row++){
for(var col = 0; col < grid.numCols(); col++){
var elem = (row);
row += 1;
print(elem + " ");
}
println("");
col = 0
for(var row = 0; row < grid.numRows(); row++){
col += 1;
var elem2 = (col);
print(elem2 + " ");
}
}
}
当我运行代码时,它显示:
0 1 2
1 2 undefined
知道我应该怎么做吗?
解决方案
您看到的原因undefined
是因为您正在调用print
该sumGrid
函数,该函数不返回任何内容,因此undefined
打印了为什么。
不知道为什么你有 3 个for
循环,但你只需要 2 个。首先循环通过rows
,cols
然后是简单的 printrow + col
应该可以工作。
const Grid = function (x, y) {
this.x = x
this.y = y
this.numRows = () => {
return this.x
}
this.numCols = () => {
return this.y
}
}
const sumGrid = (grid) => {
for(let row = 0; row < grid.numRows(); row++){
document.write("<p> ")
for(let col = 0; col < grid.numCols(); col++){
document.write(row + col)
}
document.write(" </p>")
}
}
const grid = new Grid(4, 5)
sumGrid(grid)
推荐阅读
- node.js - Electron 在单独的线程上运行加密 Diffie Hellman 密钥生成
- google-apps-script - 如何在谷歌表格中制作自动时间戳?
- r - 使用 mutate_all 将所有列除以所选列
- javascript - 如何确定是从统一接口 (UCI) 还是旧版 Web 客户端调用 Dynamics XRM javascript?
- r - R:用 /r/n 编辑字符串向量到 data.frame
- javascript - 用于验证信用卡报表的报表描述符的正则表达式
- python - 一次将数据加载到占位符,然后运行多个计算
- ios - 如何关闭当前视图控制器后面的视图控制器?
- java - 如何在方法内使用没有 @Query 注释的 JPQL?
- python - 烧瓶应用程序:尝试对字典进行 jsonify