如何在javascript中处理回调函数?

时间:2017-07-14 21:16:19

标签: javascript

异步函数本身应该使用我在异步函数中使用的lookup()函数,但是在回调中返回结果。

回调的参数是err和res。 如果lookup()抛出了一个错误,那么它应该被传递给 错误,否则错误是null或undefined。如果lookup()返回结果,那么它应该传递给res,否则res为null或未定义,我有其他两个测试用于检查属性,就像用户一样,但我缩短了代码尽可能多。问题是lookupAsync()函数内部的回调。

body {
    background: #F2F2F2;
    font-family: Arial;
    font-size: 24px;
    margin: 0;
    color: #7F7F7F;
}

div {
    box-sizing: border-box;
}

.container {
    margin: 0 auto;
    width: 80%;
    max-width: 1400px;
}

1 个答案:

答案 0 :(得分:1)

让我为你做这件事

const lookupAsync = (login, prop, callback) => {
  const found = users.find(function(e) {
    return e.login === login;
  });

    if (!found) {
      callback(new Error("Could not find user."));
    } else {
      if (prop in found) {
        callback(null, found[prop]);
      } else {
        callback(new Error("Could not find property"));
      }
    }
  }