Coffeescript函数声明函数:->;或func=->;?
我正在阅读spine.js文档,对函数声明有点好奇。 我一直在看医生Coffeescript函数声明函数:->;或func=->;?,coffeescript,Coffeescript,我正在阅读spine.js文档,对函数声明有点好奇。 我一直在看医生 constructor: -> super .... constructor = -> super .... 但除此之外,我总是读书 constructor: -> super .... constructor = -> super .... 函数声明的:和=是否相等?否 定义类时,:的工作方式与其他地方略有不同。在类定义中,:意味着将此函数作为方法放在原型上(实
constructor: ->
super
....
constructor = ->
super
....
但除此之外,我总是读书
constructor: ->
super
....
constructor = ->
super
....
函数声明的:和=是否相等?否
定义类时,:
的工作方式与其他地方略有不同。在类定义中,:
意味着将此函数作为方法放在原型上(实例方法)<代码>构造函数:是用于构造函数函数的特殊情况
如果您查看编译后的javascript,那么差异是显而易见的
class Foo
constructor: -> @foo = 'foo'
method: ->
编译到这个(好!)
您可以看到构造函数就是构造函数,方法在原型上
但是,当您使用=
时,您只需分配局部变量,而函数实际上并不是类的一部分,例如构造函数或原型:
class Bar
constructor = -> @bar = 'bar'
method = ->
编译到这个(坏!)
只需查看编译结果,就可以发现或解决有关coffee脚本语法的许多问题。这也是为什么我不建议在不了解JavaScript的情况下学习咖啡脚本的原因,因为如果你不知道它编译成什么,它所做的一些事情就没有意义了。不
定义类时,:
的工作方式与其他地方略有不同。在类定义中,:
意味着将此函数作为方法放在原型上(实例方法)<代码>构造函数:是用于构造函数函数的特殊情况
如果您查看编译后的javascript,那么差异是显而易见的
class Foo
constructor: -> @foo = 'foo'
method: ->
编译到这个(好!)
您可以看到构造函数就是构造函数,方法在原型上
但是,当您使用=
时,您只需分配局部变量,而函数实际上并不是类的一部分,例如构造函数或原型:
class Bar
constructor = -> @bar = 'bar'
method = ->
编译到这个(坏!)
只需查看编译结果,就可以发现或解决有关coffee脚本语法的许多问题。这也是为什么我不建议在不了解JavaScript的情况下学习咖啡脚本的原因,因为如果你不知道它编译成什么,它所做的一些事情就没有意义。编译后的JavaScript看起来像什么?编译后的JavaScript看起来像什么?+1“有关coffee脚本语法的许多问题都可以通过查看编译结果来发现或解决。”。如果遇到任何类型的错误,请查看编译结果。特别是对于“意外缩进”之类的语法错误,打开浏览器窗口时使用“重试”按钮非常有用“您可以在其中粘贴片段并立即获得反馈的页面。值得注意的是,在0.9.0之前,
x=y
和x:y
在CoffeeScript中是同义词。当然,今天,x:y
意味着{x:y}
+1,因为“关于咖啡脚本语法的许多问题可以通过查看编译结果来发现或解决。”。如果遇到任何类型的错误,请查看编译后的结果。特别是对于“意外缩进”这样的语法错误,打开浏览器窗口并打开“试用”页面非常有用,您可以在其中粘贴代码片段并立即获得反馈。值得注意的是,在0.9.0之前,x=y
和x:y
在CoffeeScript中是同义词。当然,今天,x:y
意味着{x:y}
。