私は JavaScript の操作を学んでおり、関数の値を使用して、スクリプトで HTML テーブルを作成しようとしています。
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function nextStep(xn, a) {
var xn1 = (xn+(a/xn)/2);
return xn1;
}
function getError(xn, a) {
var err = xn-(a/xn);
return err;
}
function newtonRoot(x) {
if(x>0) {
var a = 2;
var error = getError(x, a);
var zeilen = 0;
var x_werte = [];
var errors = [];
while(error>0.0001) {
x = nextStep(x, a);
error = getError(x, a);
zeilen++;
x_werte[zeilen] = x;
errors[zeilen] = error;
}
var ergebnis = x;
const GLOBAL_ERROR = error;
document.body.appendChild(document.createTextNode("<table border=" + "1" + ">"));
document.body.appendChild(document.createTextNode("<tr><td>Schritt</td><td>Startwert" + a + "</td><td>Fehler</td></tr>"));
for(var i=1;i<zeilen+1;i++) {
document.body.appendChild(document.createTextNode("<tr>"));
document.body.appendChild(document.createTextNode("<td>i</td>")));
document.body.appendChild(document.createTextNode("<td>" + x_werte[i] + "</td>"));
document.body.appendChild(document.createTextNode("<td>" + errors[i] + "</td>"));
document.body.appendChild(document.createTextNode("</tr>)));
}
document.body.appendChild(document.createTextNode("</table>"));
document.body.appendChild(document.createTextNode("Ergebnis: Wurzel von" + a + "ist" + ergbenis + "(approximiert)"));
}
}
newtonRoot(1);
</script>
</head>
<body>
</body>
</html>
しかし、それは機能していないようですか?http://www.jslint.com/
を使用して検証を試みましたが、エラーとしてマークされた小さなものが非常に多く、それらを取り除くとエラーが発生しました。
「'(end)' が予期されていましたが、代わりに < !DOCTYPE html > が表示されました」
これはバグのようです。
別のサイトでは実際にエラーは検出されませんでしたが、ここで何が間違っていたのでしょうか?
私が理解したように、書き込みはページロードでのみ使用できるため、書き込みの代わりにこのappendChildを使用しました。
編集: 最初の目標を明確にしていない可能性
があります。HTML でテーブルを作成したいのですが、コードを本文に書き込むのではなく、スクリプトに for ループで記述させます。