格式化javascript函数的正确方法

Cyb*_*ell 8 javascript coding-style function

快一点......

什么是格式化javascript函数的正确方法?

我这样看:

function doThis(){
}
Run Code Online (Sandbox Code Playgroud)

和这样:

doThis = function(){
}
Run Code Online (Sandbox Code Playgroud)

或许它没有任何区别.请让我知道什么是最好的,或者他们都有不同的rasons或目的.

干杯

C

小智 11

它们是两个不同的东西,虽然它们都创建了一个函数(并将其赋值给变量).

function name () {
}
Run Code Online (Sandbox Code Playgroud)

函数语句(或"函数声明").它是唯一合法的出现为顶级脚本元素或直接作为函数的元素:即,它是不合法的函数声明出现内部的if,或者while,等所有功能语句"解禁"到函数(或脚本)的顶部,因此以下是有效的:

a()
function a () { alert("a") }
Run Code Online (Sandbox Code Playgroud)

形式如下:

variable = function name () {} // or variable = function () {}
Run Code Online (Sandbox Code Playgroud)

function关键字位于函数表达式上下文中:它创建一个新的函数对象,并将结果函数对象(只是"正常值")赋值给variable.以下内容无效,因为函数表达式未被提升.

var b
b() // oops, does not evaluate to a function-object yet!
b = function b () { alert("b") }
Run Code Online (Sandbox Code Playgroud)

尽管如此,"正确的方法"是使用函数声明("函数声明")形式,除非有理由不这样做.

快乐的编码.


也可以看看: