es.set.intersection.v2.js 799 B

123456789101112131415161718
  1. 'use strict';
  2. var $ = require('../internals/export');
  3. var fails = require('../internals/fails');
  4. var intersection = require('../internals/set-intersection');
  5. var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
  6. var INCORRECT = !setMethodAcceptSetLike('intersection', function (result) {
  7. return result.size === 2 && result.has(1) && result.has(2);
  8. }) || fails(function () {
  9. // eslint-disable-next-line es/no-array-from, es/no-set, es/no-set-prototype-intersection -- testing
  10. return String(Array.from(new Set([1, 2, 3]).intersection(new Set([3, 2])))) !== '3,2';
  11. });
  12. // `Set.prototype.intersection` method
  13. // https://tc39.es/ecma262/#sec-set.prototype.intersection
  14. $({ target: 'Set', proto: true, real: true, forced: INCORRECT }, {
  15. intersection: intersection
  16. });