--- id: 587d8254367417b2b2512c6f title: 对两组数据执行子集检查 challengeType: 1 videoUrl: '' --- # --description-- 在本练习中,我们将对2组数据执行子集测试。我们将在我们的`Set`数据结构上创建一个名为`subset` 。这将比较第一组与第二组,如果第一组完全包含在第二组中,则它将返回true。例如,如果`setA = ['a','b']`和`setB = ['a','b','c','d']` ,则setA和setB的子集为: `setA.subset(setB)`应该是`true` 。 # --hints-- 你的`Set`类应该有一个`union`方法。 ```js assert( (function () { var test = new Set(); return typeof test.subset === 'function'; })() ); ``` 第一个Set()包含在第二个Set中 ```js assert( (function () { var setA = new Set(); var setB = new Set(); setA.add('a'); setB.add('b'); setB.add('c'); setB.add('a'); setB.add('d'); var subsetSetAB = setA.subset(setB); return subsetSetAB === true; })() ); ``` `["a", "b"].subset(["a", "b", "c", "d"])`应该返回`true` “) ```js assert( (function () { var setA = new Set(); var setB = new Set(); setA.add('a'); setA.add('b'); setB.add('a'); setB.add('b'); setB.add('c'); setB.add('d'); var subsetSetAB = setA.subset(setB); return subsetSetAB === true; })() ); ``` `["a", "b", "c"].subset(["a", "b"])`应返回`false` “) ```js assert( (function () { var setA = new Set(); var setB = new Set(); setA.add('a'); setA.add('b'); setA.add('c'); setB.add('a'); setB.add('b'); var subsetSetAB = setA.subset(setB); return subsetSetAB === false; })() ); ``` `[].subset([])`应该返回`true` ```js assert( (function () { var setA = new Set(); var setB = new Set(); var subsetSetAB = setA.subset(setB); return subsetSetAB === true; })() ); ``` `["a", "b"].subset(["c", "d"])`应返回`false` “) ```js assert( (function () { var setA = new Set(); var setB = new Set(); setA.add('a'); setA.add('b'); setB.add('c'); setB.add('d'); var subsetSetAB = setA.subset(setB); return subsetSetAB === false; })() ); ``` # --solutions--