我什么时候应该在javascript函数后面加一个分号?

时间:2012-01-16 03:36:54

标签: javascript html5

我的例子:

(第一个例子区域是用分号分配的函数)

function makeImage() {
var canvas = document.getElementById("tshirtCanvas");
**canvas.onclick = function () {
    window.location = canvas.toDataURL('image/png');
};**
}

VS

window.onload = function() {
    var button = document.getElementById("previewButton");
    button.onclick = previewHandler;


    makeImage();
}

我以为我很喜欢何时使用它,什么时候不使用它,但我想我没有。感谢。

4 个答案:

答案 0 :(得分:2)

当您将函数用作值时,应该在函数后面放置一个分号:

 var fn = function () {};
 blarg.fn = function () {};
 doStuffWith(function () {});

如果您只是单独声明一个命名函数,则不需要分号:

function doFoo() {}

请注意,在大多数情况下,您并不总是 要有分号,但无论如何都要放一个分号。

答案 1 :(得分:1)

函数表达式获得分号(适用法线结束规则)。函数声明没有。

http://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/

答案 2 :(得分:0)

之后您的函数声明不需要它。就在你打电话的时候。

function doThis(args){
getterMethod(args);
}

答案 3 :(得分:0)

如果要将功能分配给属性,则应使用分号。 因此,您可以为window.onload放置一个分号,因为您正在为窗口的onload属性分配一个函数。分号不是必需的,但我强烈建议您使用分号以防止混淆。

window.onload = function() {
    init();
    doSomethingElse();
};

MDN Docs.