【发布时间】:2014-03-02 14:38:43
【问题描述】:
我试图了解为什么标题中的错误会出现在我的脚本中。我尝试在 sublime 中匹配每个括号,看起来不错。
这里是代码
<script>
window.onload = function(){
var socket = io.connect("http://localhost:1337");
socket.on("drawn_complete",function(data){
imgData = ctx.getImageData(data.width, data.height);
for (var i = 0; i < data.raw.length) {
imgData.data[i] = data.raw[i];
}
ctx.putImageData(imgData, 0, 0);
});
var c = document.getElementById("myCanvas");
var moving = false;
console.log(c);
var ctx = c.getContext("2d");
c.onmousedown = function(evt){
moving = true
};
c.onmousemove = function(evt){
if(moving == true)
{
console.log("holding and moving");
var x = evt.clientX - rect.left;
var y = evt.clientY - rect.top;
console.log("X: " + x + " Y: " + y);
ctx.fillRect(x,y,1,1);
canvasData = ctx.getImageData(0,0,200,100)
myData = {
height : canvasData.height,
width : canvasData.width,
raw : canvasData.data
};
socket.emit("drawing",{"image": myData});
}
};
c.onmouseup = function(evt){
moving = false;
};
};
</script>
我错过了“)”还是“}”? 我的nodejs中可能会抛出这个错误吗?如果是这样,我运行 nodejs 的控制台不应该停止吗?控制台不会记录任何错误,也不会停止。
【问题讨论】:
-
随机缩进无济于事...多注意代码可以防止这些错误。
-
@dystroy 虽然我同意缩进,但即使正确缩进也不会阻止这里的错误,因为这是一个内联问题;)
-
@NiettheDarkAbsol 对。但是,当您通过适当的注意防止 95% 的错误时,您就知道该往哪里看...
-
@NiettheDarkAbsol:猜猜我们永远不会知道。正确缩进代码变得更容易阅读,并且内联问题以及其他问题更容易发现。只是说'=)。 (现在让我们来一场激烈的辩论)
-
啊,但是定义“适当的缩进”:p 就此而言,空格应该在哪里内联?就个人而言,我写了
for( i=0; i<l; i++)、if( blah)和其他东西,尽管这主要是在键盘导航非常糟糕的普通旧记事本中编程的遗留习惯。
标签: javascript token uncaught-exception