我在IE7上的脚本上获得了第1行的错误“Object Expected”,char 1(这是 - 这是)。它在Firefox中运行良好,错误控制台不打印任何内容。
我尝试了多种方法来调用我的函数,但没有一种方法可以运行:
<a href="javascript:doit()">Turingmaschine starten</a>
<a href="#" onclick="doit()">Turingmaschine starten</a>
可能是什么问题?
<script type="text/javascript" language="JavaScript">
var state;
var index;
var program;
var data;
const S=0;
const X=1;
const S2=2;
const X2=3;
const M=4;
const E="SE";
function doit()
{
state=document.getElementById("stat").value;
program = document.getElementById("prog").value.split("\n");
index = document.getElementById("dat").value.indexOf("Z")>>1;
data = document.getElementById("dat").value.replace(/Z,/, "").split(",");
for (var i = 0; i<program.length; i++)
{
program[i]=program[i].split(",");
}
while(state!=E)
{
var i;
for (i = 0; i<program.length; i++)
{
if (program[i][S]==state && program[i][X]==data[index])
{
state = program[i][S2];
data[index] = program[i][X2]
index+= parseInt(program[i][M]);
data.splice(index,0,"Z");
if (data[data.length-1]!="*")
{
data.push("*");
}
if (data[0]!="*")
{
data.unshift("*");
index++;
}
document.getElementById("out").value+=state+": "+data+"\r\n";
data.splice(index,1);
break;
}
}
if (i==program.length)
break;
}
document.getElementById("out").value+="Done.\r\n";
}
</script>
答案 0 :(得分:5)
Const
。它特定于Firefox和Opera 9.0+。此外,如果您发布此代码的用途,也许我们可以帮助重构它。
https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Statements/const#Description
答案 1 :(得分:0)
我遇到了类似的问题,我所做的只是改变:
<script language="javascript" type="application/javascript" src="abc.js"></script>
对此:
<script language="javascript" src="abc.js"></script>
刚刚删除type="application/javascript"
部分。
干杯