Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
它使用coffeescript调用生成的javascript_Javascript_Jquery_Backbone.js_Coffeescript - Fatal编程技术网

它使用coffeescript调用生成的javascript

它使用coffeescript调用生成的javascript,javascript,jquery,backbone.js,coffeescript,Javascript,Jquery,Backbone.js,Coffeescript,本机javascript: var Person; Person = Backbone.Model.extend({}); 如果我在谷歌chrome控制台var person=new person中编写代码,那么这段代码运行良好 我的main.coffee Person = Backbone.Model.extend({}) 生成的main.js // Generated by CoffeeScript 1.4.0 (function() { var Person; Person

本机javascript:

var Person;
Person = Backbone.Model.extend({});

如果我在谷歌chrome控制台
var person=new person中编写代码,那么这段代码运行良好

我的
main.coffee

Person = Backbone.Model.extend({})
生成的
main.js

// Generated by CoffeeScript 1.4.0
(function() {
  var Person;

  Person = Backbone.Model.extend({});

}).call(this);
如果我在google chrome控制台中编写:

var person = new Person;
ReferenceError: Person is not defined

如何使用生成的javascript而不是本机javascript从控制台创建实例?

CoffeeScript默认将所有代码包装到函数中,以避免污染全局命名空间。您可以使用
-b
/
--bare
标志编译代码以避免此包装,或者使用
window.Person=Backbone.Model.extend({})
手动使其全局化,这是在CoffeeScript中执行所需操作的常用方法。

CoffeeScript默认将所有代码包装到函数中,以避免污染全局命名空间。您可以使用
-b
/
--bare
标志编译代码以避免使用此包装器,或者使用
window.Person=Backbone.Model.extend({})
手动使其全局化,这是在CoffeeScript中执行所需操作的常用方法。

var Person=new Person()
我认为
个人
在全局范围内不可见。您可以尝试
window.Person=Backbone.Model.extend({})
@neuron它是正确的!。谢谢。
var person=new person()
我认为
个人
在全局范围内不可见。您可以尝试
window.Person=Backbone.Model.extend({})
@neuron它是正确的!。非常感谢。