Как вы создаете литералы массива с помощью HJScript или действительно HJavaScript?

В HJavaScript есть тип Array , но я не вижу способа создания литерала, который преобразовал бы, например, в JS как [1,2,3] . Я не хочу создавать new Array () , а затем вставлять в него элементы, если мне это не нужно.

В идеале мне нужна функция вроде array :: [t] -> Array t .

Я мог бы использовать JConst для реализации array , но это похоже на хакерство для чего-то, что должно быть прямым- вперед. Я мог бы также использовать метод create-and-push, описанный выше, для реализации array , но это тоже не очень хорошо.

Вот array нажатием; не так уж и здорово.

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

6
задан Christopher Done 7 May 2011 в 22:16
поделиться