从`咖啡`可执行文件调用函数

原谅noob问题,但是为什么我不能从coffee REPL(或者从TextMate中编写和运行的文件)调用(几乎)任何标准函数?

variables赋值工作,函数不。

例子:

 coffee> string = "string" 'string' coffee> list = [1,2,3] [ 1, 2, 3 ] coffee> num = 42 42 coffee> opposite = true true coffee> num = -42 if opposite -42 

 coffee> alert "Hello, World" ReferenceError: alert is not defined at repl:1:5 at REPLServer.replDefaults.eval (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/repl.js:33:28) at repl.js:239:12 at Interface.<anonymous> (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/repl.js:62:9) at Interface.EventEmitter.emit (events.js:117:20) at Interface._onLine (readline.js:202:10) at Interface._line (readline.js:531:8) at Interface._ttyWrite (readline.js:760:14) at ReadStream.onkeypress (readline.js:99:10) at ReadStream.EventEmitter.emit (events.js:117:20) 

 coffee> print "Hello" ReferenceError: print is not defined at repl:1:5 at REPLServer.replDefaults.eval (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/repl.js:33:28) at repl.js:239:12 at Interface.<anonymous> (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/repl.js:62:9) at Interface.EventEmitter.emit (events.js:117:20) at Interface._onLine (readline.js:202:10) at Interface._line (readline.js:531:8) at Interface._ttyWrite (readline.js:760:14) at ReadStream.onkeypress (readline.js:99:10) at ReadStream.EventEmitter.emit (events.js:117:20) 

真正让我感到的是:

 coffee> console.log "Help!" Help! undefined 

我通过npm安装了通过Homebrew和CoffeeScript(全局)安装的节点。

alert不是JavaScript的function 。 它是浏览器暴露给JavaScript的API的一部分。 而在你电脑上的命令行coffee只是node.js一个简单的包装,将咖啡脚本翻译成JavaScript,由节点解释。 node.js不提供alertfunction。 它也不提供全球printfunction。

节点和浏览器都提供了一个全局的console对象。 所以console.log工作原理是一样的。

刷新节点文档 ,了解function节点公开的内容。 并记住,只是因为它在浏览器中工作并不意味着它将在节点中工作。

alertprint不是本地的node.jsfunction

如果您想在不使用示例代码片段进行更改的情况下使用咖啡开始命令行,请在运行代码之前在提示处尝试以下两个分配。

print = console.log
alert = console.log

下面是一个小巧的Hello Worldfunction,让你开始:

coffee> hello = (word) -> console.log "Hello " + word
coffee> hello "World"
Hello World

在使用'alert'命令之前

  1. 必须安装“alert-node”库
  2. 需要'alert-node'给你的脚本

请按照此链接 – > 警报function不工作在咖啡脚本

 npm install alert-node alert = require('alert-node') 
Interesting Posts