Set.prototype.symmetricDifference()
Baseline
2024
Newly available
Since June 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
symmetricDifference() 㯠Set ã¤ã³ã¹ã¿ã³ã¹ã®ã¡ã½ããã§ãéåãåãåãããã® Set ã¨ä¸ããããéåã®ã©ã¡ããã«ãããã両æ¹ã«ã¯ãªãè¦ç´ ã®å
¥ã£ãæ°ãã Set ãè¿ãã¾ãã
æ§æ
symmetricDifference(other)
弿°
è¿å¤
æ°ãã Set ãªãã¸ã§ã¯ãã§ããã® Set 㨠other ã®éåã®ã©ã¡ããã«ãããã®ã®ã両æ¹ã«ã¯ãªãè¦ç´ ãå
¥ã£ããã®ã§ãã
解説
æ°å¦çãªè¨æ³ã§ã¯ã対称差å (symmetric difference) ã¯æ¬¡ã®ããã«å®ç¾©ããã¾ãã
ãã³å³ã使ãã¨ãããªãã¾ãã
symmetricDifference() ã¯ãSet 風ãªãã¸ã§ã¯ãã other 弿°ã¨ãã¦åãå
¥ãã¾ããthis ã¯ãã¦ã¼ã¶ã¼ã³ã¼ããå¼ã³åºããã¨ãªããthis ãªãã¸ã§ã¯ãã«æ ¼ç´ããã¦ãããã¼ã¿ã«ç´æ¥ã¢ã¯ã»ã¹ãããããå®éã® Set ã¤ã³ã¹ã¿ã³ã¹ã§ãããã¨ãè¦æ±ããã¾ããæ¬¡ã«ãother ã® keys() ã¡ã½ãããå¼ã³åºãã¦ç¹°ãè¿ãå¦çãè¡ããthis ã«åå¨ããother ã«åå¨ããªããã¹ã¦ã®è¦ç´ ã¨ãother ã«åå¨ããthis ã«åå¨ããªããã¹ã¦ã®è¦ç´ ããã¹ã¦å«ãæ°ãã Set ãæ§ç¯ãã¾ãã
è¿ããã Set å
ã®è¦ç´ ã®é åºã¯ãã¾ã this ã®è¦ç´ ãæ¬¡ã« other ã®è¦ç´ ã¨ãªãã¾ãã
ä¾
>symmetricDifference() ã®ä½¿ç¨
次ã®ä¾ã§ã¯ãå¶æ°ï¼10 æªæºï¼ã¨å®å ¨å¹³æ¹ï¼10 æªæºï¼ã®éåã®å¯¾ç§°å·®åãè¨ç®ãã¾ããçµæã¯ãå®å ¨å¹³æ¹ã¾ãã¯å¶æ°ã®ã©ã¡ããã§ã両æ¹ã«ã¯ãªãæ°ã®éåã¨ãªãã¾ãã
const evens = new Set([2, 4, 6, 8]);
const squares = new Set([1, 4, 9]);
console.log(evens.symmetricDifference(squares)); // Set(5) { 2, 6, 8, 1, 9 }
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-set.prototype.symmetricdifference> |