javascript - 从 Javascript 函数返回变量

标签 javascript jquery ajax

我无法返回此函数的结果。

function get_duration() {
    var a = '';
    $.ajax({
        url: "http://gdata.youtube.com/feeds/api/videos?q=3KMz3JqRByY&max-results=50& format=5,1,6",
        dataType: "jsonp",
        success: function (data) {
            re2 = /seconds='(\d+)'/ig;
            while (re.exec(data) != null) {
                a = re2.exec(data);
            }
        }
    });
    return a;
}

最佳答案

您必须在 success 回调中使用 return,因为 Ajax 中的 A异步

像这样:

function get_duration() {
    var a = '';
    $.ajax({
        url: "http://gdata.youtube.com/feeds/api/videos?q=3KMz3JqRByY&max-results=50& format=5,1,6",
        dataType: "jsonp",
        success: function (data) {
            re2 = /seconds='(\d+)'/ig;
            while (re.exec(data) != null) {
                a = re2.exec(data);
            }
            return a;
        }
    });
}

但是,这个函数不能保证返回。您将不得不使用回调函数之类的东西。

关于javascript - 从 Javascript 函数返回变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22730413/

相关文章:

javascript - 如何从 AlloyUI 图表中提取含义?

ajax - 使用文件夹名称填充 JSP 下拉列表

javascript - 如何从 jQuery Get 获取响应头位置?

asp.net - 数据绑定(bind)到 View 模型不起作用

javascript - 从 json 数组中搜索并删除对象

javascript - 如何使用 ReactJs 中的 map 函数内的 OnClick 获取 DOM 元素 id

javascript - 找到被点击的li号

jquery - 单击介绍 div 时显示隐藏的 div

javascript - $ 和 $$ 有什么区别

javascript - jquery click 函数不适用于 if 语句