将变量设置为回调函数的返回值

时间:2013-08-20 10:43:43

标签: javascript callback

getElementId function

function getIdElements(idname, callback) {
    callback(document.getElementById(idname))
};

我希望像这样使用它,但plLen获取undefined

var plLen = getIdElements("length", function(e){return e.textContent});

如果有人能够尽可能深入地解释,我会很高兴。谢谢。

1 个答案:

答案 0 :(得分:4)

您只需返回回调返回的值:

function getIdElements(idname, callback) {
     return callback(document.getElementById(idname));
}

与从回调中获取返回值几乎相同,并返回它。这是一个冗长的版本:

function getIdElements(idname, callback) {
     var element = document.getElementById(idname);
     var callbackRetrunValue = callback(element);
     return callbackRetrunValue;
}

在您的代码中:没有return值,您从getIdElements中读取的值只是undefinedWhat does javascript function return in the absence of a return statement?