indiqué ci-dessous est le code dans lequel j'ai essayé de modifier un tableau à l'aide de la fonction de flèche, mais lors de l'exécution, il renvoie une valeur non définie comme la sortie peut donner des suggestions s'il vous plaît
p>
var modifyArray = (nums) => { return nums.forEach(function (element) { (element % 2 == 0) ? element *= 2 : element *= 3; }) } console.log(modifyArray([1,2,3,4,5]));
5 Réponses :
.foreseach code> retourne non défini. Vous voulez probablement
.MAP code> à un nouveau tableau et renvoyez que:
return nums.map(function (element) {
return (element % 2 == 0) ? element *= 2 : element *= 3;
});
p> foreach code> ne renvoie rien - utilisez
mapper code> à la place:
var modifyArray = nums => nums.map(element => element % 2 == 0 ? element *= 2 : element *= 3)
console.log(modifyArray([1,2,3,4,5]));
Je reçois votre point, mais même s'il revenait explicitement de l'intérieur de la méthode du rappel, il n'aurait toujours rien eu puisque pourcheche s'attend à une méthode qui retourne
Voir les réponses ci-dessus.
Il y a une solution de contournement si vous souhaitez toujours utiliser foreach code> p>
Qu'en est-il de l'utilisation de boucles?
var modifyArray = (nums) => { for (let i = 0; i < nums.length; i++) { let element = nums[i]; // console.log(element + ' - ' + element % 2 ); nums[i] = (element % 2 == 0) ? element *= 2 : element *= 3; } return nums; } console.log(modifyArray([1,2,3,4,5]));
Pour chaque retour non défini car il ne renvoie rien, mais vous pouvez utiliser pour utiliser la même chose en appuyant sur vos données dans un tableau. Avis que je n'ai pas changé votre approche mais je viens de l'étendre
p>
var modifyArray = (nums) => { var somearray = []; for (let i = 0; i < nums.length; i++) { somearray.push((nums[i] % 2 == 0) ? nums[i] *= 2 : nums[i] *= 3) } return somearray; } console.log(modifyArray([1, 2, 3, 4, 5]));
foreach méthode code> ne renvoie aucune valeur particulière, c'est-à-dire qu'il retournera
non défini code>. Vous pouvez essayer d'utiliser
array.pototype.map code> à la place. `` `return nums.map (fonction (élément (élément) {(élément% 2 == 0)? élément * = 2: élément * = 3;})` `` `