如何使用 HJScript 或 HJavaScript 创建数组文字

How do you create array literals with HJScript or indeed HJavaScript?

本文关键字:创建 数组 文字 HJavaScript 何使用 HJScript      更新时间:2023-09-26

在 HJavaScript 中,有 Array 类型,但我看不到一种构造文本的方法,例如,将 JS 转换为 [1,2,3] .如果没有必要,我不想创建一个new Array()然后将项目推送到其中。

理想情况下,我追求的是像array :: [t] -> Array t这样的功能.

我可以使用JConst来实现array,但这似乎是对应该直截了当的东西的黑客。我也可以做上面的创建和推送方法来实现array,不过这也不是很好。

这是通过推动array;不是那么好。

array :: [Exp a] -> JS (JArray a)
array xs = do
  arr <- new Array ()
  mapM_ (`push` arr) xs
  return arr
这个问题

是我第一次听说HJscript。 简要查看文档,我看不出有任何方法可以使简单的数组文字化,例如[1,2,3]。 但是,我确实看到了一种调用函数的方法,并注意到[1,2,3] = Array(1,2,3). 事实上,我敢打赌,口译员将前者视为后者的糖。 因此,如果可以调用函数,则可以构造文本。