Maison > interface Web > js tutoriel > le corps du texte

Que renvoie Math.max() sans paramètres ? Pourquoi?

青灯夜游
Libérer: 2021-06-02 10:34:09
avant
1875 Les gens l'ont consulté

Cet article vous présentera ce que Math.max() retournera sans paramètres ? Pourquoi? Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il sera utile à tout le monde.

Que renvoie Math.max() sans paramètres ? Pourquoi?

Math.max() est une méthode intégrée dans JS qui peut renvoyer la plus grande méthode parmi les paramètres transmis. Par exemple :

Math.max(1, 2, 3); // => 3
Copier après la connexion

Si Math.max() n'utilise qu'un seul paramètre, quel est le résultat ?

Math.max(1); // => 1
Copier après la connexion

Comme prévu, la valeur maximale d'un nombre est lui-même.

Mais quel est le résultat s'il est appelé sans paramètres Math.max() ?

Math.max(); // => -Infinity
Copier après la connexion

sans paramètres Math.max() renvoie le résultat -Infinity Voyons ensuite pourquoi c'est le cas.

La valeur maximale dans un tableau

Avant de discuter de ce problème, voyons d'abord comment Math.max() obtient la valeur maximale d'un tableau.

Math.max(num1, num2, ..., numN)Accepte plusieurs arguments numériques et renvoie leur nombre maximum.

Si nous voulons obtenir la valeur maximale d'un tableau, nous pouvons utiliser l'opérateur spread :

const numbers1 = [1, 2, 3];

Math.max(...numbers1); // => 3
Copier après la connexion

Valeur maximale dans deux tableaux

Maintenant , Regardons quelque chose d'intéressant. Étant donné deux tableaux, nous déterminons d'abord la valeur maximale dans chaque tableau, puis déterminons la valeur maximale après avoir obtenu les deux valeurs maximales.

const numbers1 = [1, 2, 3];
const numbers2 = [0, 6];

const max1 = Math.max(...numbers1);
const max2 = Math.max(...numbers2);

max1; // 3
max2; // 6
Math.max(max1, max2); // => 6
Copier après la connexion

La valeur maximale du tableau [1, 2, 3] est 3, la valeur maximale du tableau [0, 6] est 6, et enfin la valeur maximale de 3 et 6 est 6.

Pas de problème, continuons.

Quel sera le résultat si un tableau est vide ? Essayons :

const numbers1 = [];
const numbers2 = [0, 6];

const max1 = Math.max(...numbers1);
const max2 = Math.max(...numbers2);

max1; // -Infinity
max2; // 6
Math.max(max1, max2); // => 6
Copier après la connexion

Maintenant, lorsque le premier tableau est vide, la valeur maximale ci-dessus est également 6.

Ce qui est plus intéressant ici, c'est la valeur de retour de Math.max(...numbers1) Lorsque le tableau numbers1 est vide, cela revient à appeler Math.max() sans paramètres, et le résultat est -Infinity.

Donc Math.max(max1,max2) équivaut à Math.max(-Infinity, 6), et le résultat est 6.

Vous savez maintenant pourquoi Math.max() renvoie -Infinity: lorsqu'il est appelé sans arguments. C'est une façon de définir une fonction max sur une collection vide.

Ceci est similaire à l'addition, le -Infinity de max et le 0 d'addition sont les mêmes.

Math.min() a également le même comportement : lorsqu'il est appelé sans arguments, il renvoie Infinity.

Concernant l'opération maximale sur les nombres réels, -Infinity est appelé l'élément Identité

C'est tout pour cet article Voici un défi : Pouvez-vous écrire un code avec. Math.max()Exactement la même fonction sum(num1, num2, ..., numN). Sa fonction est de trouver la somme de tous les éléments. Qu'est-ce que

Élément d'identité Si vous le comprenez, veuillez laisser un message pour l'ajouter. quelques connaissances.

Adresse originale en anglais : https://dmitripavlun.com/javscript-math-max-infinity/

Auteur : Dmitri Pavlutin

Traducteur : Front-end Xiao Zhi

Pour plus de connaissances sur la programmation, veuillez visiter : Introduction à la programmation ! !

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!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!