如何在Coffeescript中添加现有对象的方法?

时间:2014-10-16 06:41:29

标签: javascript coffeescript

让我们说一个对象是由某个函数创建的:

myObject = someFunction();

现在,myObject是一个对象。

如何为此对象添加新方法?以下内容在Coffeescript中不起作用:

myObject.newMethod: (something) ->
  # do stuff here

我无法在someFunction()中编辑对象定义,因此我必须在事后将该方法添加到对象中。这里的语法是什么?

1 个答案:

答案 0 :(得分:5)

这将是myObject.newMethod = (something) ->

在声明属性时使用冒号,在赋值属性时使用赋值运算符。声明属性的唯一时间是创建对象的时间。在JavaScript中也是如此。

var myObject = {foo: 'bar'}; 
myObject.baz = 'quux';

最佳做法是不修改您不拥有的对象(someFunction拥有该对象)。你应该创建一个将这种对象作为参数的函数。