首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >JavaScript:创建工厂函数,该函数返回具有特定属性的方法的对象

JavaScript:创建工厂函数,该函数返回具有特定属性的方法的对象
EN

Stack Overflow用户
提问于 2019-06-03 00:40:18
回答 1查看 18关注 0票数 0

我有一个工厂函数,它返回一个对象。在对象中,我有一个名为getNext的方法。

我希望getNext方法返回一个具有valuedone属性的对象。

下面是我的代码,但我在返回括号中的代码似乎是不正确的。

代码语言:javascript
复制
function makeIterator (arr){

  let methodCalls = 0; 

    return {
      getNext(obj){
        methodCalls += 1; 

        return {
          this.value = ''; 
          this.done = ''; 
        }
      },

      getIndex(){
        return methodCalls
      }
    }
  }

我上面的代码没有通过下面的测试规范:

代码语言:javascript
复制
it('the `getNext` method returns an object with the properties `value` and `done`', () => {
    const iterator = makeIterator(['first', 'second', 'third']);
    const iterableInfo = iterator.getNext();

expect(Object.keys(iterableInfo).sort()).toEqual(['done', 'value'].sort());
    expect(iterableInfo.hasOwnProperty('value')).toBe(true);
    expect(iterableInfo.hasOwnProperty('done')).toBe(true);
  });

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2019-06-03 00:51:10

看起来您似乎是在尝试利用destructuring assignment

下面是一个示例,展示了它的外观:

代码语言:javascript
复制
var a, b, rest;
[a, b] = [10, 20];

更多信息请点击此处:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56416955

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档