--- title: GeneratorExponential id: 5a23c84252665b21eecc7e7b challengeType: 5 videoUrl: '' localeTitle: GeneratorExponential --- ## Description
生成器是一个可执行实体(如函数或过程),它包含一次生成一个值序列的代码,这样每次调用生成器时,都会提供序列中的下一个值。生成器通常构建在协同程序或对象之上,以便“自然地”处理对象的内部状态。生成器通常用于序列可能无限的情况,并且可以在只有最小状态的情况下构造序列的下一个值。编写一个使用生成器生成正方形和立方体的函数。创建一个新的生成器,从正方形生成器中过滤所有多维数据集。该函数应返回已过滤生成器的\(n ^ {th} \)值。例如,对于\(n = 7 \),函数应该返回81,因为序列将是4,9,16,25,36,49,81。这里64被过滤掉了,因为它是一个立方体。
## Instructions
## Tests
```yml tests: - text: exponentialGenerator应该是一个函数。 testString: 'assert(typeof exponentialGenerator=="function","exponentialGenerator should be a function.");' - text: exponentialGenerator()应该返回一个数字。 testString: 'assert(typeof exponentialGenerator(10)=="number","exponentialGenerator() should return a number.");' - text: exponentialGenerator(10)应该返回144 。 testString: 'assert.equal(exponentialGenerator(10),144,"exponentialGenerator(10) should return 144.");' - text: exponentialGenerator(12)应该返回196 。 testString: 'assert.equal(exponentialGenerator(12),196,"exponentialGenerator(12) should return 196.");' - text: exponentialGenerator(14)应该返回256 。 testString: 'assert.equal(exponentialGenerator(14),256,"exponentialGenerator(14) should return 256.");' - text: exponentialGenerator(20)应该返回484 。 testString: 'assert.equal(exponentialGenerator(20),484,"exponentialGenerator(20) should return 484.");' - text: exponentialGenerator(25)应该返回784 。 testString: 'assert.equal(exponentialGenerator(25),784,"exponentialGenerator(25) should return 784.");' ```
## Challenge Seed
```js function exponentialGenerator (n) { // Good luck! } ```
## Solution
```js // solution required ```