Javascript 从函数返回数组并将其赋给变量
我试图从函数返回一个对象数组,并将其赋给一个变量Javascript 从函数返回数组并将其赋给变量,javascript,jquery,arrays,Javascript,Jquery,Arrays,我试图从函数返回一个对象数组,并将其赋给一个变量 function contactsbuilder(contacts){ var contactsarray = []; parent.$(contacts).each(function(i,contact){ contactsarray.push(somevalues); if(contacts.length == i+1){ console.log("coming in h
function contactsbuilder(contacts){
var contactsarray = [];
parent.$(contacts).each(function(i,contact){
contactsarray.push(somevalues);
if(contacts.length == i+1){
console.log("coming in here?");
return contactsarray;
}
});
};
现在我试着像这样分配它
var contactsarray =contactsbuilder(customdetails.contacts);
但是,即使在创建控制台日志之后,contactsarray
始终保持未定义状态。我试过了,但运气不好
我试了一个简单的,没有费吹灰之力的
function sample(){
var xx= ["ss","ssdfds"];
return xx;
}
var something = sample()
现在有些东西得到了数组值,在我的例子中有什么问题 您需要返回
each()
回调中没有任何效果的数组。并且没有任何东西从contactsbuilder函数返回,因此将return语句移到外部
function contactsbuilder(contacts){
var contactsarray = [];
parent.$(contacts).each(function(i,contact){
contactsarray.push(somevalues);
if(contacts.length == i+1){
console.log("coming in here?");
}
});
return contactsarray;// return the array
};
您需要在
each()
回调中返回数组,该回调没有任何效果。并且没有任何东西从contactsbuilder函数返回,因此将return语句移到外部
function contactsbuilder(contacts){
var contactsarray = [];
parent.$(contacts).each(function(i,contact){
contactsarray.push(somevalues);
if(contacts.length == i+1){
console.log("coming in here?");
}
});
return contactsarray;// return the array
};
谢谢,如果它有大约1000个值,它不会返回空数组吗?或者当我想进行一些ajax调用并返回值时?@vignesh:ajax是异步的,它可能随时都会完成。例如,如果我想在$()中进行一些ajax调用,我就找不到你。每个都会在ajax调用返回一些值之前返回contactsarray吗?@vignesh:ajax是异步的。。。。该函数不会等待ajax执行ajax ji,如果我要在该函数中使用ajax调用并根据其结果返回值,我该怎么办?谢谢,如果它有大约1000个值,它不会返回空数组吗?或者当我想进行一些ajax调用并返回值时?@vignesh:ajax是异步的,它可能随时都会完成。例如,如果我想在$()中进行一些ajax调用,我就找不到你。每个都会在ajax调用返回一些值之前返回contactsarray吗?@vignesh:ajax是异步的。。。。该函数不会等待ajax执行ajax ji,如果我要在该函数中使用ajax调用并根据其结果返回值,该怎么办?parent.$(contacts)`应该是什么意思?它只是对象数组$(somearray)的一个for-each。每个对象都应该是'parent.$(contacts)`意思是?对于对象数组$(somearray),它只是一个for-each