【发布时间】:2014-11-13 18:09:44
【问题描述】:
在下面的这段代码中,我创建了一个Test 对象并将其存储在一个数组中。我写了一个方法来按名称检索测试对象并返回它,但它返回的是Array原型,而不是Test原型。我附上了下面的示例代码和一个codepen。我做错了什么以及如何尝试解决它。
class TestHandler
constuctor: ->
testList: []
addTest: (test) ->
@testList.push test
getTestList: ->
@testList
getTestForName: (name) ->
for e in @getTestList() when e.getName() is name
e
class Test
constructor: (name) ->
@name = name
getName: ->
@name
testHandler = new TestHandler()
testHandler.addTest new Test 'hi'
console.log testHandler.getTestForName 'hi'
【问题讨论】:
-
它不返回任何原型对象?但是,是的,它返回一个具有该名称的对象数组 - 正如你告诉它的那样。
-
不,它返回一个原型对象
Array。我告诉它抓取一个特定对象,但不返回附加到该特定对象的原型。