Maison > Article > interface Web > Comment trouver la longueur et la somme des éléments d'un tableau en JavaScript
En JavaScript, vous pouvez utiliser l'attribut length pour obtenir la longueur du tableau, la syntaxe est "array object.length" ; vous pouvez utiliser la fonction réduire() ou réduireRight() pour trouver la somme des éléments, la syntaxe est "arr.reduce(function f(pre,curr){return pre+cur})" ou "arr.reduceRight(function f(pre,curr){return pre+cur})".
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
JavaScript pour trouver la longueur d'un tableau
En JavaScript, vous pouvez utiliser la propriété length de l'objet tableau pour obtenir la longueur du tableau.
Chaque tableau a un attribut de longueur, qui renvoie la longueur maximale du tableau, c'est-à-dire que sa valeur est égale à la valeur d'indice maximale plus 1. Puisque l'indice numérique doit être inférieur à 2^32-1, la valeur maximale de l'attribut de longueur est égale à 2^32-1.
Exemple 1
Le code suivant définit un tableau vide, puis attribue une valeur à l'élément avec l'indice égal à 100, puis la propriété length renvoie 101. Par conséquent, l’attribut length ne peut pas refléter le nombre réel d’éléments du tableau.
var a = []; //声明空数组 a[100] = 2; console.log(a.length); //返回101
Sortie : l'attribut
101
length est lisible et inscriptible et est un attribut dynamique. La valeur de l'attribut length est également automatiquement mise à jour à mesure que les éléments du tableau changent. Dans le même temps, si la valeur de l'attribut length est réinitialisée, cela affectera également les éléments du tableau. Les instructions spécifiques sont les suivantes :
Si l'attribut length est défini sur une valeur inférieure à la valeur de longueur actuelle, le tableau. sera tronqué et la valeur de l'élément au-delà de la nouvelle longueur sera Tout sera perdu.
Si la propriété length est définie sur une valeur supérieure à la valeur de longueur actuelle, alors le tableau vide sera ajouté à la fin du tableau, ce qui entraînera l'augmentation du tableau jusqu'à la longueur nouvellement spécifiée et les valeurs lues sera indéfini.
Exemple 2
Le code suivant démontre l'impact des changements dynamiques dans la valeur de l'attribut de longueur sur le tableau.
var a = [1,2,3]; //声明数组直接量 a.length = 5; //增长数组长度 console.log(a[4]); //返回undefined,说明该元素还没有被赋值 a.length = 2; //缩短数组长度 console.log(a[2]); //返回undefined,说明该元素的值已经丢失
Sortie :
undefined undefined
JavaScript pour trouver la somme des tableaux
Méthode 1 : utilisez réduire()
reduce() pour calculer les éléments du tableau en une seule valeur (de gauche à droite).
var a = [1, 2, 3, 4, 5]; var b =a.reduce(function f(pre, curr){ return pre + curr; }); console.log(b);
Explication : La méthode
reduce() peut appeler la fonction de rappel spécifiée pour tous les éléments du tableau. La valeur de retour de cette fonction de rappel est le résultat cumulé, et cette valeur de retour est fournie en paramètre la prochaine fois que la fonction de rappel est appelée. L'utilisation spécifique est la suivante :
array.reduce(callbackfn[, initialVaule]);
Description du paramètre :
array : paramètre obligatoire, un objet tableau.
callbackfn : paramètre obligatoire, une fonction qui accepte jusqu'à quatre paramètres. La méthode recovery() appelle la fonction callbackfn une fois pour chaque élément du tableau.
initialValue : Paramètre facultatif, si initialVaule est spécifié, il sera utilisé comme valeur initiale pour démarrer l'accumulation. Le premier appel à la fonction callbackfn fournit cette valeur en tant que paramètre au lieu d'une valeur de tableau. La valeur de retour de la méthode
reduce() est le résultat cumulé obtenu par le dernier appel à la fonction de rappel.
Si le paramètre initialVaule est fourni, la méthode réduire() appellera la fonction callbackfn une fois pour chaque élément du tableau (dans l'ordre d'index croissant) ; à partir du 2ème élément La fonction callbackfn est appelée pour chaque élément.
La valeur de retour de la fonction de rappel est fournie en tant que paramètre previousValue la prochaine fois que la fonction de rappel est appelée. La valeur de retour obtenue lors du dernier appel à la fonction de rappel est la valeur de retour de la méthode recude(). Cette méthode n'appelle pas la fonction de rappel pour les éléments manquants dans le tableau.
La syntaxe de la fonction de rappel est la suivante :
function callbackfn(previousValue, currentVaule, currentIndex, array);
Description du paramètre de la fonction Callback :
previousValue : la valeur obtenue par le dernier appel à la fonction de rappel. Si initialValue est fourni à la méthode réduire(), la valeur précédente est initialValue lorsque la fonction est appelée pour la première fois.
currentValue : La valeur du tableau d'éléments actuel.
currentIndex : L'index numérique de l'élément actuel du tableau.
array : Objet tableau contenant l'élément.
Lorsque la fonction de rappel est appelée pour la première fois, la valeur fournie en paramètre dépend du fait que la méthode réduire() ait ou non un paramètre initialValue. Si initialValue est fourni à la méthode recude(), le paramètre previousValue est la valeur initiale et le paramètre currentValue est la valeur du 1er élément du tableau.
Méthode 2 : utilisez réduireRight()
reduceRight() pour calculer les éléments du tableau en une valeur (de droite à gauche).
var arr = [1, 2, 3, 4, 5, 5]; var b =arr.reduceRight(function f(pre, curr){ return pre + curr; }); console.log(b);
Description : La méthode
reduceRight() peut appeler la fonction de rappel spécifiée sur tous les éléments du tableau de droite à gauche. La valeur de retour de cette fonction de rappel est le résultat cumulé, et cette valeur de retour est fournie en paramètre la prochaine fois que la fonction de rappel est appelée. L'utilisation spécifique est la suivante :
array.reduceRight(callbackfn[, initialValue]);
该方法的语法和用法与 reduce() 方法大概相同,唯一不同的是,它是从数组右侧开始调用回调函数。如果提供了 initialValue,则 reduceRight() 方法会按降序索引顺序对数组中的每个元素调用一次 callbackfn 函数。如果未提供 initialValue,则 reduceRight() 方法会按降序索引顺序对每个元素(从倒数第 2 个元素开始)调用 callbackfn 函数。
【相关推荐:javascript视频教程、web前端开发】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!