我无法返回此函数的结果。
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/