无法修改功能以打印其他功能的内容

时间:2019-04-09 13:50:28

标签: node.js function callback

我使用三个不同的函数在node中编写了一个脚本,以在其中提供回调。

如何修改printResult()函数以保持设计原样以便在addGender()函数中打印内容?

这是我写的:

const name = "sam"

function getName(callback) {
  callback(name);
}

function addTitle(name,callback) {
  var title = "writer";
  callback(name,title);
}

function addGender(name,title,callback) {
  var gender = "male";
  console.log({name,title,gender});
}

printResult();

1 个答案:

答案 0 :(得分:1)

如果您未在函数中使用addGender,为什么callback有一个const name = "sam" function getName(callback) { callback(name); } function addTitle(name,callback) { var title = "writer"; callback(name,title); } function addGender(name,title,callback) { var gender = "male"; console.log({name,title,gender}); } function printResult() { getName(function(name) { addTitle(name, function(name, title) { addGender(name, title) }) }) } printResult();

此方法无需更改任何列出的功能。

addGender

此处是经过修改的版本,其中callback使用const name = "sam" function getName(callback) { callback(name); } function addTitle(name,callback) { var title = "writer"; callback(name,title); } function addGender(name,title,callback) { var gender = "male"; callback({name,title,gender}) } function printResult() { getName(function(name) { addTitle(name, function(name, title) { addGender(name, title, function(result) { console.log(result) }) }) }) } printResult();

str.contains