解构或指定运营商

时间:2016-02-23 11:45:11

标签: javascript ecmascript-6

如何使用新的ES6功能编写以下内容:

EitherT(init(3)).flatMapF(add(_, 4)).flatMapF(multiply(_, 3)).run

我相信我应该使用解构运算符或Object.assign函数或两者

1 个答案:

答案 0 :(得分:2)

AFAIK没有办法有效地简化该代码,除非这三个字段是values中唯一存在的字段。

如果(且仅当)是这种情况,您可以使用:

Object.assign(this, values);

一个解构版本,但恕我直言,它不值得使用,因为它几乎不比个别的明确作业短:

({currentPlayer: this.currentPlayer,
  gameOver: this.gameOver,
  inCheck: this.inCheck} = values);