Valeur de retour de la fonction Jquery

J'ai créé une fonction pour itérer via un UL / LI. Cela fonctionne parfaitement, mon problème est de retourner la valeur à une autre variable. Est-ce même possible? Quelle est la meilleure méthode pour cela? Merci!

function getMachine(color, qty) { $("#getMachine li").each(function() { var thisArray = $(this).text().split("~"); if(thisArray[0] == color&& qty>= parseInt(thisArray[1]) && qty<= parseInt(thisArray[2])) { return thisArray[3]; } }); } var retval = getMachine(color, qty); 

Je ne suis pas tout à fait sûr du but général de la fonction, mais vous pouvez toujours faire ceci:

 function getMachine(color, qty) { var retval; $("#getMachine li").each(function() { var thisArray = $(this).text().split("~"); if(thisArray[0] == color&& qty>= parseInt(thisArray[1]) && qty<= parseInt(thisArray[2])) { retval = thisArray[3]; return false; } }); return retval; } var retval = getMachine(color, qty); 

L'énoncé de retour que vous avez est coincé dans la fonction interne, de sorte qu'il ne retourne pas de la fonction externe. Vous avez juste besoin d'un peu plus de code:

 function getMachine(color, qty) { var returnValue = null; $("#getMachine li").each(function() { var thisArray = $(this).text().split("~"); if(thisArray[0] == color&& qty>= parseInt(thisArray[1]) && qty<= parseInt(thisArray[2])) { returnValue = thisArray[3]; return false; // this breaks out of the each } }); return returnValue; } var retval = getMachine(color, qty);