Javascript 如何从使用$.each()的函数返回数据
当我尝试从使用Javascript 如何从使用$.each()的函数返回数据,javascript,jquery,Javascript,Jquery,当我尝试从使用$的函数中返回值时,each()会得到未定义的值,而不是值。但是当我直接从函数返回它时,它会找到值。我不熟悉如何解决的奇怪行为 我在这里做了一把小提琴,这是这个问题的一个例子: 函数returneach(){ $(“b”)。每个功能(i、v){ 如果(i==3){alert('should:'+i);返回i;} }); } 警报('但返回:'+returneach());// 这里有两个嵌套函数 内部函数内的返回不会导致外部函数返回 使用变量并返回该变量: functio
$的函数中返回值时,each()
会得到未定义的值,而不是值。但是当我直接从函数返回它时,它会找到值。我不熟悉如何解决的奇怪行为
我在这里做了一把小提琴,这是这个问题的一个例子:
函数returneach(){
$(“b”)。每个功能(i、v){
如果(i==3){alert('should:'+i);返回i;}
});
}
警报('但返回:'+returneach());// 这里有两个嵌套函数
内部函数内的返回
不会导致外部函数返回
使用变量并返回该变量:
function returneach() {
var r;
$("b").each(function(i,v){
if(i==3) r = i;
});
return r; // This will either return 3 or undefined
}
这里有两个嵌套函数
内部函数内的返回
不会导致外部函数返回
使用变量并返回该变量:
function returneach() {
var r;
$("b").each(function(i,v){
if(i==3) r = i;
});
return r; // This will either return 3 or undefined
}
这里有两个嵌套函数
内部函数内的返回
不会导致外部函数返回
使用变量并返回该变量:
function returneach() {
var r;
$("b").each(function(i,v){
if(i==3) r = i;
});
return r; // This will either return 3 or undefined
}
这里有两个嵌套函数
内部函数内的返回
不会导致外部函数返回
使用变量并返回该变量:
function returneach() {
var r;
$("b").each(function(i,v){
if(i==3) r = i;
});
return r; // This will either return 3 or undefined
}
将索引分配给变量,然后返回它
function returneach() {
var ret;
$("b").each(function(i,v){
if(i==3) {
ret = i;
}
});
return ret;
}
alert('but returns: ' + returneach());
将索引分配给变量,然后返回它
function returneach() {
var ret;
$("b").each(function(i,v){
if(i==3) {
ret = i;
}
});
return ret;
}
alert('but returns: ' + returneach());
将索引分配给变量,然后返回它
function returneach() {
var ret;
$("b").each(function(i,v){
if(i==3) {
ret = i;
}
});
return ret;
}
alert('but returns: ' + returneach());
将索引分配给变量,然后返回它
function returneach() {
var ret;
$("b").each(function(i,v){
if(i==3) {
ret = i;
}
});
return ret;
}
alert('but returns: ' + returneach());
很多时候,迭代一个集合需要返回另一个集合或数组。这是一个展示
function returneach() {
var arr = [];
$("b").each(function(i,v){
if(i==3 || i == 2) { console.log('should be: ' + i); arr.push(i); }
});
return arr;
}
console.log('but returns: ' + returneach());
编辑
根据注释中的建议,使用$.map()
添加了函数
function returneachWithMap(){
return $.map($('b'), function(i,v){
if(v==3 || v == 2) { console.log('should be: ' + v); return v; };
});
}
console.log('but returns: ' + returneachWithMap());
此外,文章的标题并不反映您正在使用的代码<代码>$。each()
与$(选择器)不同。each()
。从:
$.each()函数与$(选择器).each()不同,后者是
用于以独占方式迭代jQuery对象。美元/个()
函数可用于迭代任何集合,无论它是
对象或数组
很多时候,迭代一个集合需要返回另一个集合或数组。这是一个展示
function returneach() {
var arr = [];
$("b").each(function(i,v){
if(i==3 || i == 2) { console.log('should be: ' + i); arr.push(i); }
});
return arr;
}
console.log('but returns: ' + returneach());
编辑
根据注释中的建议,使用$.map()
添加了函数
function returneachWithMap(){
return $.map($('b'), function(i,v){
if(v==3 || v == 2) { console.log('should be: ' + v); return v; };
});
}
console.log('but returns: ' + returneachWithMap());
此外,文章的标题并不反映您正在使用的代码<代码>$。each()
与$(选择器)不同。each()
。从:
$.each()函数与$(选择器).each()不同,后者是
用于以独占方式迭代jQuery对象。美元/个()
函数可用于迭代任何集合,无论它是
对象或数组
很多时候,迭代一个集合需要返回另一个集合或数组。这是一个展示
function returneach() {
var arr = [];
$("b").each(function(i,v){
if(i==3 || i == 2) { console.log('should be: ' + i); arr.push(i); }
});
return arr;
}
console.log('but returns: ' + returneach());
编辑
根据注释中的建议,使用$.map()
添加了函数
function returneachWithMap(){
return $.map($('b'), function(i,v){
if(v==3 || v == 2) { console.log('should be: ' + v); return v; };
});
}
console.log('but returns: ' + returneachWithMap());
此外,文章的标题并不反映您正在使用的代码<代码>$。each()
与$(选择器)不同。each()
。从:
$.each()函数与$(选择器).each()不同,后者是
用于以独占方式迭代jQuery对象。美元/个()
函数可用于迭代任何集合,无论它是
对象或数组
很多时候,迭代一个集合需要返回另一个集合或数组。这是一个展示
function returneach() {
var arr = [];
$("b").each(function(i,v){
if(i==3 || i == 2) { console.log('should be: ' + i); arr.push(i); }
});
return arr;
}
console.log('but returns: ' + returneach());
编辑
根据注释中的建议,使用$.map()
添加了函数
function returneachWithMap(){
return $.map($('b'), function(i,v){
if(v==3 || v == 2) { console.log('should be: ' + v); return v; };
});
}
console.log('but returns: ' + returneachWithMap());
此外,文章的标题并不反映您正在使用的代码<代码>$。each()与$(选择器)不同。each()
。从:
$.each()函数与$(选择器).each()不同,后者是
用于以独占方式迭代jQuery对象。美元/个()
函数可用于迭代任何集合,无论它是
对象或数组
您必须从
returneach()
函数returneach(){
var-retVal;
$(“b”)。每个功能(i、v){
如果(i==3){
警报('应为:'+i);
retVal=i;
}
});
返回返回;
}
警报('但返回:'+returneach());// 您必须从returneach()
函数returneach(){
var-retVal;
$(“b”)。每个功能(i、v){
如果(i==3){
警报('应为:'+i);
retVal=i;
}
});
返回返回;
}
警报('但返回:'+returneach());// 您必须从returneach()
函数returneach(){
var-retVal;
$(“b”)。每个功能(i、v){
如果(i==3){
警报('应为:'+i);
retVal=i;
}
});
返回返回;
}
警报('但返回:'+returneach());// 您必须从returneach()
函数returneach(){
var-retVal;
$(“b”)。每个功能(i、v){
如果(i==3){
警报('应为:'+i);
retVal=i;
}
});
返回返回;
}
警报('但返回:'+returneach());// 或者你可以这样做
function returneach() {
var allTags$ = $("b");
for(var i=0; i<allTags$.length; i++ ){
if(i==3) {
return i;
}
}
}
alert('but returns: ' + returneach());
函数returneach(){
var allTags$=$(“b”);
对于(var i=0;i或者您可以这样做
function returneach() {
var allTags$ = $("b");
for(var i=0; i<allTags$.length; i++ ){
if(i==3) {
return i;
}
}
}
alert('but returns: ' + returneach());
函数returneach(){
var allTags$=$(“b”);
对于(var i=0;i或者您可以这样做
function returneach() {
var allTags$ = $("b");
for(var i=0; i<allTags$.length; i++ ){
if(i==3) {
return i;
}
}
}
alert('but returns: ' + returneach());
函数returneach(){
var allTags$=$(“b”);
对于(var i=0;i或者您可以这样做
function returneach() {
var allTags$ = $("b");
for(var i=0; i<allTags$.length; i++ ){
if(i==3) {
return i;
}
}
}
alert('but returns: ' + returneach());
函数returneach(){
var allTags$=$(“b”);
for(var i=0;ireturneach
不返回任何内容。请尝试return$.map(fn)。toArray()
您的returneach
函数没有return语句,因此它不返回任何内容a-returni
正在为每个l指定返回值