Javascript ExecJS::ProgramError: SyntaxError: 保留字“函数”
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/9011103/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
ExecJS::ProgramError: SyntaxError: Reserved word "function"
提问by user938363
In our rails rfq.js.coffee, we only have a simple js code:
在我们的 rails rfq.js.coffee 中,我们只有一个简单的 js 代码:
$(function() {
$('#need_report').change(function(){
if ($(this).val() == true) {
$('#report_language').hide();
} // end if
}); // end change()
}); // end ready(function)
However this code causes an error saying that function() in first line is a reserved word. Since the first line is basically a jquery $(document).ready(function () {})
, we have no clue why this error shows up. Any thoughts about it? Thanks so much.
然而,这段代码会导致一个错误,指出第一行中的 function() 是一个保留字。由于第一行基本上是一个 jquery $(document).ready(function () {})
,我们不知道为什么会出现这个错误。有什么想法吗?非常感谢。
回答by Dylan Markow
You can't use standard JS like that in a Coffeescript file. Either rename the file to rfq.js
, or convert it to coffeescript:
你不能在 Coffeescript 文件中使用这样的标准 JS。将文件重命名为rfq.js
,或将其转换为 coffeescript:
$ ->
$('#need_report').change ->
if $(this).val()
$('#report_language').hide()
回答by hourwise
You can embed regular javascript by surrounding the code with back-ticks "`". I wish it worked like the other parsing languages as well...it took me lot's of unnecessary debugging and searching to figure that out. http://coffeescript.org/#embedded
您可以通过用反引号“`”包围代码来嵌入常规 javascript。我希望它也能像其他解析语言一样工作……我花了很多不必要的调试和搜索来弄清楚这一点。 http://coffeescript.org/#embedded
回答by hguzman
Maybe you wrote JavaScript code into file with extension .coffee
you can use js2.coffeeto convert your code from JavaScript to CoffeeSecript
也许您将 JavaScript 代码写入带有扩展名的文件中,.coffee
您可以使用js2.coffee将您的代码从 JavaScript 转换为 CoffeeSecript