【发布时间】:2013-09-07 01:47:13
【问题描述】:
如何让evaluate返回回调的返回值?
ary = @evaluate ->
[1, 2, 3]
@echo "LENGTH: #{ary.length}"
@echo "TYPE: #{ary.constructor}"
输出:
LENGTH: undefined
TYPE: function
然后它输出函数的主体,这是 Casper 的一部分。
基于this one 之类的样本,我期待ary 成为我的数组。我在这里错过了什么?
更新:
顺便说一句,这是可行的:
ary = eval @evaluate ->
'[1, 2, 3]'
@echo "LENGTH: #{ary.length}"
@echo "TYPE: #{ary.constructor}"
输出:
LENGTH: 3
TYPE: Array
我是否必须将evaluate 的输出编组为字符串(或其他原语)?这不是样本显示的内容。
更新 #2
我正在使用 PhantomJS 1.9.1,这可能与它有关,因为在降级到 1.9.0 后我无法复制该问题。
【问题讨论】: