2016-09-04 6 views
0

JavascriptにはArray.prototype.mapがありますが、セットには同等のものはありません。 Javascriptで地図を実行するにはどうすればよいでしょうか?Javascript Setでマップをどのように実行しますか?

EDIT:

users = new Set([1,2,3]) 

// throws an error: 
// Uncaugh TypeError: users.map is not a function 
users.map(n => n*n) 
+1

あなたの質問を強調するために例を追加してください。 –

+0

も参照してくださいhttp://stackoverflow.com/q/31084619/1048572またはhttp://stackoverflow.com/q/31232415/1048572 – Bergi

+0

計算の結果はどうしますか?新しい配列、新しい['Set'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set)?新しい['Map'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map)? –

答えて

0

を要求したとして、例を追加あなたはスプレッド構文がために(表現が複数の引数の場所に展開することができます

Spread-Operator

を使用することができます関数コール)または複数の要素(配列リテラル用)または複数の変数(構造化割り当て用)が必要です。

に設定すると、Setのようにマップできます。

const s = new Set([1,2,3,4]); 
 

 
const a = [...s].map(n => n * 2) 
 

 
console.log(a)

+0

マップ式を 'Set'コンストラクタにラップする必要があります。なぜなら、' Set'のマッピングは 'Set'を返さなければならないからです。 'new Set(Array.from(s).map(n => n%2))'は 'Set {1、0}'を生成しますが、マッピングは構造体を変換してはいけません。セット。 – ftor

関連する問題