我该如何解决这个问题?

Yahya Elfaqir:

我想使用闭包来跟踪所有先前的计算,并使用闭包将它们填充到一个对象中,然后仅打印结果,如果命中了密码,则它应该使用先前的操作来控制整个对象的输出。

function saveOutput(func, magicWord) {
  let output = {};
  let outer = magicWord;

  function someWork(x) {
    if (x !== outer) {
      output.x = func(x);
      console.log(output[x]);
    } else {
      console.log(output);
    }
  }
}

// /*** Uncomment these to check your work! ***/
const multiplyBy2 = function(num) {
  return num * 2;
};
const multBy2AndLog = saveOutput(multiplyBy2, 'boo');
console.log(multBy2AndLog(2)); // => should log 4
console.log(multBy2AndLog(9)); // => should log 18
console.log(multBy2AndLog('boo')); // => should log { 2: 4, 9: 18 }

您:
  • 您正在执行multBy2AndLog为此,您需要从返回someWork函数saveOutput
  • 如果要multBy2AndLog(2)返回值,则需要return output[x]someWork
  • output.x将一个属性添加xoutput对象。您需要使用方括号符号output[x]来添加内部具有值的键xJavaScript属性访问:点符号与方括号?

function saveOutput(func, magicWord) {
  let output = {};
  let outer = magicWord;
  
  // ↓ add return here
  return function someWork(x) {
    if (x !== outer) {
      output[x] = func(x); // not output.x
      return output[x]; // <- return the value from the function 
    } else {
      return output;
    }
  }
}

function multiplyBy2(num) {
  return num * 2;
};

const multBy2AndLog = saveOutput(multiplyBy2, 'boo');

console.log(multBy2AndLog(2)); // => should log 4
console.log(multBy2AndLog(9)); // => should log 18
console.log(multBy2AndLog('boo')); // => should log { 2: 4, 9: 18 }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我该如何解决这个问题?

我该如何解决这个问题?

我该如何解决这个问题?让我烦了很久

我该如何解决这个 javascript 数学问题?

我该如何解决这个奇怪的SSD问题?

我该如何解决这个 <a href> 问题?

我该如何解决这个 Laravel 项目安装问题?

我该如何解决这个CRUD问题

我该如何解决这个GParted问题?

情节传奇消失了,我该如何解决这个问题?

我该如何解决这个 mysql 存储函数问题?

错误检查尝试,我该如何解决这个问题?

我该如何解决这个问题“编译失败”

我该如何解决这个问题,以及解决该问题的合适算法是什么

请找到此查询的解决方案我该如何解决这个问题

我如何解决这个问题?

我如何解决这个 JSONObject 问题

我将如何解决这个问题?

我如何解决这个问题?

我该如何解决这个 Bootstrap v5.0.2 模态问题?案例问题

我的游戏在转换完成之前加载 Unity 我该如何解决这个问题?

使用 Jinja 的 "{% break %}" 破坏了我的 Javascript 代码。我该如何解决这个问题?

为什么我得到了错误的输出,我该如何解决这个问题?

我的显示器有这个奇怪的问题。我该如何解决?

我该如何解决这个问题,我想创建专辑数组

我该如何解决这个问题??我认为这与 return 语句有关

我收到一个逻辑错误,我该如何解决这个问题?

XAMMP- localhost 永远加载,我收到错误 403。我该如何解决这个问题?

为什么我不能写两个条件?我该如何解决这个问题?