从匿名函数汇编脚本访问全局变量

Access global variable from an anonymous function assemblyscript

我正在尝试使用函数式语法处理汇编脚本数组。

但是,当我尝试访问函数范围之外的变量时出现错误:

示例

ts.values.filter(t => t.someField == ts.someField)

我在函数内 ts.someField 访问时收到错误 Cannot find name 'ts'

如何将 ts 添加到我的匿名函数的闭包中?

目前 AssemblyScript 不支持闭包(仅支持匿名函数)。参见 related issue。我们仍未就如何最好地实施这一点达成共识。

作为解决方法,您可以将 "ts" 对象移动到全局范围或使用循环而不是函数方法。