Javascript 用于字母矩阵输出的嵌套for循环
背景:我一直在做嵌套for循环练习。我正在编写的程序旨在获取列和行数据,并使用嵌套for循环创建字母矩阵或网格。我能够在网格中编译数据(很好!),但是有一行不必要的数据卡在网格顶部。(不是很好…)有人能告诉我是什么原因造成的吗,我相信这是非常简单的事情,但我的大脑可能会因为看了这么长时间而兴奋 任何帮助都将不胜感激Javascript 用于字母矩阵输出的嵌套for循环,javascript,for-loop,matrix,nested-loops,letter,Javascript,For Loop,Matrix,Nested Loops,Letter,背景:我一直在做嵌套for循环练习。我正在编写的程序旨在获取列和行数据,并使用嵌套for循环创建字母矩阵或网格。我能够在网格中编译数据(很好!),但是有一行不必要的数据卡在网格顶部。(不是很好…)有人能告诉我是什么原因造成的吗,我相信这是非常简单的事情,但我的大脑可能会因为看了这么长时间而兴奋 任何帮助都将不胜感激 "" 函数字母_矩阵(){ let column=parseInt(document.form.letter\u column.value); 让rows=parseInt(do
""
函数字母_矩阵(){
let column=parseInt(document.form.letter\u column.value);
让rows=parseInt(document.form.letter\u rows.value);
让文本=”;
let letter letters=“abcdefghijklmnopqrstuvwxyzabefghijklmnopqrstuvxyz”;
for(设i=0;i
您需要拆分
标记,如下所示。这条线引起了问题
text+=''+字母.charAt(i)+''代码>
你得到的不正常结果仅仅是因为这个。请参见下面的代码,我是如何在循环之后使用的,并删除了字母.charAt(I)
。这是在添加额外的行
text += "<tr>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
text += "</tr>";
text+=”;
for(设j=0;j
参考工作演示您需要拆分
标签,如下所示。这条线引起了问题
text+=''+字母.charAt(i)+''代码>
你得到的不正常结果仅仅是因为这个。请参见下面的代码,我是如何在循环之后使用的,并删除了字母.charAt(I)
。这是在添加额外的行
text += "<tr>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
text += "</tr>";
text+=”;
for(设j=0;j
请参阅第一个中的工作演示,了解如何创建
添加一些文本并关闭
您很可能只需打开一个tr
,在内部for
之后,然后关闭tr
for(设i=0;i
在您的第一个for
中,您创建了一个
添加一些文本并关闭一个
您很可能只需打开一个tr
,在内部for
之后,然后关闭tr
for(设i=0;i
就是这样。
刚刚在这里添加了,
,文本+=+++++字母代码>
在
这样做了,但它不是强制性的,只是更新
let column=document.getElementById(“columns”).value代码>
<!DOCTYPE html>
<html lang="en">
<head>
<title>""</title>
</head>
<body>
<h1>""</h1>
<form name="form" action = "javascript:letter_matrix();">
Columns: <input id="columns" type="text" name="letter_column">
Rows: <input id="rows" type="text" name="letter_rows">
<input type="submit" value="Enter values.">
</form>
<pre id="results">
</pre>
</body>
<script>
function letter_matrix() {
let column = document.getElementById("columns").value;
let rows = document.getElementById("rows").value;
let text = "<table><th></th>";
let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (let i = 0; i < rows ; i++) {
text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
}
text += "</table>";
document.getElementById("results").innerHTML= text;
}
</script>
</html>
[1]: https://i.stack.imgur.com/Ey2gn.png
let rows=document.getElementById(“rows”).value代码>
<!DOCTYPE html>
<html lang="en">
<head>
<title>""</title>
</head>
<body>
<h1>""</h1>
<form name="form" action = "javascript:letter_matrix();">
Columns: <input id="columns" type="text" name="letter_column">
Rows: <input id="rows" type="text" name="letter_rows">
<input type="submit" value="Enter values.">
</form>
<pre id="results">
</pre>
</body>
<script>
function letter_matrix() {
let column = document.getElementById("columns").value;
let rows = document.getElementById("rows").value;
let text = "<table><th></th>";
let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (let i = 0; i < rows ; i++) {
text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
}
text += "</table>";
document.getElementById("results").innerHTML= text;
}
</script>
</html>
[1]: https://i.stack.imgur.com/Ey2gn.png
""
""
柱:
排:
函数字母_矩阵(){
让column=document.getElementById(“columns”).value;
让rows=document.getElementById(“rows”).value;
让文本=”;
let letter letters=“abcdefghijklmnopqrstuvwxyzabefghijklmnopqrstuvxyz”;
for(设i=0;i
就是这样。
刚刚在这里添加了,
,文本+=+++++字母代码>
在
这样做了,但它不是强制性的,只是更新
let column=document.getElementById(“columns”).value代码>
<!DOCTYPE html>
<html lang="en">
<head>
<title>""</title>
</head>
<body>
<h1>""</h1>
<form name="form" action = "javascript:letter_matrix();">
Columns: <input id="columns" type="text" name="letter_column">
Rows: <input id="rows" type="text" name="letter_rows">
<input type="submit" value="Enter values.">
</form>
<pre id="results">
</pre>
</body>
<script>
function letter_matrix() {
let column = document.getElementById("columns").value;
let rows = document.getElementById("rows").value;
let text = "<table><th></th>";
let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (let i = 0; i < rows ; i++) {
text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
}
text += "</table>";
document.getElementById("results").innerHTML= text;
}
</script>
</html>
[1]: https://i.stack.imgur.com/Ey2gn.png
let rows=document.getElementById(“rows”).value代码>
<!DOCTYPE html>
<html lang="en">
<head>
<title>""</title>
</head>
<body>
<h1>""</h1>
<form name="form" action = "javascript:letter_matrix();">
Columns: <input id="columns" type="text" name="letter_column">
Rows: <input id="rows" type="text" name="letter_rows">
<input type="submit" value="Enter values.">
</form>
<pre id="results">
</pre>
</body>
<script>
function letter_matrix() {
let column = document.getElementById("columns").value;
let rows = document.getElementById("rows").value;
let text = "<table><th></th>";
let letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (let i = 0; i < rows ; i++) {
text += "<tr>"+ "<td>" + letters.charAt(i) + "</td>";
for(let j = 0; j < column ; j++){
let k = (i * rows + j) % 26;
text += "<td>"+letters.charAt(k)+ "</td>";
}
}
text += "</table>";
document.getElementById("results").innerHTML= text;
}
</script>
</html>
[1]: https://i.stack.imgur.com/Ey2gn.png
""
""
柱:
排:
函数字母_矩阵(){
让column=document.getElementById(“columns”).value;
让rows=document.getElementById(“rows”).value;
让文本=”;
let letter letters=“abcdefghijklmnopqrstuvwxyzabefghijklmnopqrstuvxyz”;