2016-10-20 5 views
1

Set.prototype.values()は、Mapオブジェクトとの類似性の値が存在することを説明しています。私はそれが何を言っているのか理解していますが、この類似性がなぜ必要なのか理解できません。なぜes6セットプロトタイプに値メソッドがありますか?

+0

すべてのコンテナは、「配列」を含む一連のメソッドを共有します。あなたは離れて立って 'セット'を好むだろうか?任意のコンテナを関数に渡すことができるのはむしろ便利なのでしょうか? – zeroflagL

答えて

0

ここではドキュメントからの引用です:

キー()メソッドは(Mapオブジェクトとの類似性のために)このメソッドの別名ですが。まったく同じように動作し、Set要素の値を返します。

そして、それは、Setオブジェクトはそのプロトタイプにこれらのメソッドの両方を持っているオブジェクトを、マップするために、より類似しているように、この方法(Set.prototype.values())の別名である別の方法、Set.prototype.keys()があることを意味します。

1

Setの値は一意であるため、キーと考えることができます。

なぜこの類似性が望まれますか?

理由がわかりません。私の意見では、この選択肢を持たない方が良いでしょう。

+1

メソッドの何が問題ですか?代わりに 'keys'メソッドを削除しないでください。結局のところ、セットには何もキーではない値が含まれていますか? – Bergi

+0

これは私が言ったことです - 'keys'は' Map'sとの類似性のために導入されました。 – destoryer

関連する問題