小编典典

nodeJs回调简单示例

javascript

任何人都可以给我一个简单的nodeJs回调示例,我已经在许多网站上进行了搜索,但无法正确理解,请给我一个简单的示例。

getDbFiles(store, function(files){
    getCdnFiles(store, function(files){
    })
})

我想做这样的事情…


阅读 481

收藏
2020-05-01

共1个答案

小编典典

var myCallback = function(data) {
  console.log('got data: '+data);
};

var usingItNow = function(callback) {
  callback('get it?');
};

现在打开节点或浏览器控制台,并粘贴以上定义。

最后在下一行中使用它:

usingItNow(myCallback);

关于节点样式错误约定

Costa问如果我们要遵守节点错误回调约定,会是什么样子。

按照这种约定,回调应期望至少收到一个参数(第一个参数)作为错误。根据上下文,我们可以选择有一个或多个其他参数。在这种情况下,上下文就是我们上面的示例。

在这里,我按照这个约定重写了我们的示例。

var myCallback = function(err, data) {
  if (err) throw err; // Check for the error and throw if it exists.
  console.log('got data: '+data); // Otherwise proceed as usual.
};

var usingItNow = function(callback) {
  callback(null, 'get it?'); // I dont want to throw an error, so I pass null for the error argument
};

如果要模拟错误情况,可以像这样定义usingItNow

var usingItNow = function(callback) {
  var myError = new Error('My custom error!');
  callback(myError, 'get it?'); // I send my error as the first argument.
};

最终用法与上面的完全相同:

usingItNow(myCallback);

行为上的唯一区别将取决于usingItNow您定义的版本:向第一个参数的回调提供“真实值”(一个Error对象)的对象,或者为错误参数将其提供null的对象。

2020-05-01