【问题标题】:CoffeeScript: Error When Instantiating Object In Constructor [closed]CoffeeScript:在构造函数中实例化对象时出错[关闭]
【发布时间】:2013-05-28 06:08:38
【问题描述】:

尝试在另一个对象的构造方法中实例化一个对象时,我遇到了一个奇怪的错误。

编辑 3

例如(带图片):

这里是javascript

这是编译好的咖啡脚本

【问题讨论】:

  • @T.J.Crowder:我猜他的意思是this,尽管它仍然没有产生他发布的输出。 Connor,请向我们展示一个完整的示例来演示此行为。
  • 问题中的缩进不是 CoffeeScript 中的缩进。您的@foo@bar 分配与constructor 处于同一级别,它们不在其中;如果您不相信我,请参阅this example
  • 您确定您的示例 CoffeeScript 没有遗漏extends
  • 你确定你没有混合空格和制表符吗?我可以通过使用制表符(和四个空格制表位)缩进 @foo@bar 来重现您的输入和输出,而其余的则使用空格。
  • @muistooshort,你是对的

标签: javascript oop coffeescript


【解决方案1】:

你可能有错误的缩进。只有@object = new obj() 被认为属于constructor 代码,以下几行将成为构造函数本身的属性。

如果您看不到,您的代码中可能包含非空白或非制表符。还要确保你只使用标签 空白,而不是(正如mu is too short 指出的那样),它们的混合。

在 javascript 中将一个对象作为另一个对象的成员数据是不好的编程习惯吗?

绝对不是,尤其是因为函数也是对象。几乎所有 JSON 或 XML 数据都是嵌套的。是什么让您认为这可能是一种不好的做法?

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2021-03-05
  • 1970-01-01
  • 1970-01-01
  • 2012-02-02
  • 1970-01-01
  • 2014-09-13
  • 2014-09-23
  • 2013-11-05
相关资源
最近更新 更多