当我尝试从使用 $.each()
的函数返回
一个值时,我得到的是 undefined
而不是该值。但是当我直接从函数返回它时,它会找到该值。我不知道如何解决奇怪的行为。
我在这里做了一个 fiddle ,这是这个问题的一个例子: JS Fiddle
function returneach() {
$("b").each(function(i,v){
if(i==3) { alert('should be: ' + i); return i; }
});
}
alert('but returns: ' + returneach()); // <- undefined
如何让它正常工作?
最佳答案
这里有两个嵌套函数。
内部函数内的返回
不会导致外部函数返回。
使用变量并返回该变量:
function returneach() {
var r;
$("b").each(function(i,v){
if(i==3) r = i;
});
return r; // This will either return 3 or undefined
}
关于javascript - 如何从使用 $.each() 的函数返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21317836/