Coffeescript 咖啡装订?
我刚读完那本关于咖啡脚本的小书,我正试着了解一下这门语言。我想知道如何做一个简单的香草绑定。这是我的密码:Coffeescript 咖啡装订?,coffeescript,bind,Coffeescript,Bind,我刚读完那本关于咖啡脚本的小书,我正试着了解一下这门语言。我想知道如何做一个简单的香草绑定。这是我的密码: times = (a = 1, b = 2) -> a*b h = alert.bind times 8, 9 h 这不会产生任何错误,但也不会运行任何警报。我做错了什么 您没有调用函数h。您需要调用h() 这个代码没有意义。第2行传输到var h=alert.bind(时间(8,9))意味着您正在尝试创建alert的一个版本,其中此为72???你不能那样做 根据2,这
times = (a = 1, b = 2) -> a*b
h = alert.bind times 8, 9
h
这不会产生任何错误,但也不会运行任何警报。我做错了什么
h
。您需要调用h()
var h=alert.bind(时间(8,9))
意味着您正在尝试创建alert
的一个版本,其中此
为72
???你不能那样做uncaughttypeerror:非法调用
理解coffeescript的一个有用工具是,它将在coffeescript和JavaScript之间来回翻译代码。然后你就能知道你所写的是否是你认为你所写的 这里的代码有两个问题:
bind
将上下文(将其用作其this
)作为其第一个参数。调用新函数时,后续参数将形成绑定函数的参数列表你认为这到底是怎么回事?结果JavaScript中出现了一个错误,
Uncaught TypeError:非法调用
@Mathletics不,只有在调用函数时才会出现错误。@RoyJ我们的两个答案都指出OP需要调用函数,因此他们会看到这个错误。如果你真的想学究气,当然,这段代码不会产生错误,因为它什么都不做。代码的更正版本将抛出错误。@Mathletics但是说OP得到错误是不正确的。OP不是。我们是,当我们改变他的密码。一个修正版的代码将完全符合OP的要求。非常感谢。非常感谢并很高兴看到如此活跃且信息良好的Cincs用户群。