我是 CoffeeScript 初学者。
这是来自:http://js2coffee.org/ 的输出
.js:
var prevPost = Posts.findOne({position: this.position - 1});
.咖啡:
prevPost = Posts.findOne(position: @position - 1)
.js:
Posts = new Meteor.Collection('posts');
.咖啡:
@Posts = new Meteor.Collection("posts")
为什么这里不加括号?
.js:
Posts.update(nextPost._id, {$set: {position: nextPost.position - 1}});
.咖啡:
Posts.update nextPost._id,
$set:
position: nextPost.position - 1
最佳答案
在 CoffeeScript 中,您可以在所有情况下省略括号:
prevPost = Posts.findOne position: @position - 1
@Posts = new Meteor.Collection "posts"
我认为去掉括号是一种风格问题。
如果您有省略括号的“心情”,请注意在没有参数时您不能省略它们。
这会将 foo 分配给 bar
bar = foo
这会将函数 foo 的返回值分配给 bar:
bar = foo()
关于javascript - 为什么 CoffeeScript 在以下情况下需要括号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22508584/