回调函数没有 return 任何东西
callback function doesn't return anything
var res = "";
function longest(sen, callback) {
sen = sen.split(" ");
for(var i = 0; i < sen.length; i++) {
callback(sen[i]);
}
}
function findLongest(item) {
if(item.length > res.length) {
res = item;
}
return res;
}
longest("the greatest day EVERERAWEREWRWRAEWR",findLongest);
我试图找到我输入的字符串中最长的单词,但它所做的只是 return 未定义。我知道有很多更简单的方法可以找到最长的单词,但我想实现这样的回调。
longest
更新 res
(通过回调)但不更新 return 任何内容。尝试在调用 longest
后打印出 res
,或者从 longest
.
returning res
var res = "";
function longest(sen, callback) {
sen = sen.split(" ");
for(var i = 0; i < sen.length; i++) {
callback(sen[i]);
}
}
function findLongest(item) {
if(item.length > res.length) {
res = item;
console.log('now max len is %s',item);
}
}
longest("the greatest day EVERERAWEREWRWRAEWR",findLongest);
删除 return,因为您不使用它。替换为 console.log 以便您可以看到结果。
var res = "";
function longest(sen, callback) {
sen = sen.split(" ");
for(var i = 0; i < sen.length; i++) {
callback(sen[i]);
}
}
function findLongest(item) {
if(item.length > res.length) {
res = item;
}
return res;
}
longest("the greatest day EVERERAWEREWRWRAEWR",findLongest);
我试图找到我输入的字符串中最长的单词,但它所做的只是 return 未定义。我知道有很多更简单的方法可以找到最长的单词,但我想实现这样的回调。
longest
更新 res
(通过回调)但不更新 return 任何内容。尝试在调用 longest
后打印出 res
,或者从 longest
.
res
var res = "";
function longest(sen, callback) {
sen = sen.split(" ");
for(var i = 0; i < sen.length; i++) {
callback(sen[i]);
}
}
function findLongest(item) {
if(item.length > res.length) {
res = item;
console.log('now max len is %s',item);
}
}
longest("the greatest day EVERERAWEREWRWRAEWR",findLongest);
删除 return,因为您不使用它。替换为 console.log 以便您可以看到结果。