Maison  >  Article  >  interface Web  >  Pourquoi mon code JavaScript se comporte-t-il mal lors de la vérification de la longueur de la chaîne ?

Pourquoi mon code JavaScript se comporte-t-il mal lors de la vérification de la longueur de la chaîne ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-01 09:25:02850parcourir

Why Does My JavaScript Code Misbehave When Checking String Length?

Comprendre les comparaisons d'égalité en JavaScript

Lorsque vous travaillez avec des chaînes en JavaScript, il est crucial de comprendre comment fonctionnent les comparaisons d'égalité. L'extrait de code suivant vise à vérifier si une chaîne donnée est vide, comporte moins ou égale à 9 chiffres ou comporte jusqu'à 10 chiffres. Cependant, les instructions conditionnelles de l'extrait donnent des résultats inattendus.

if (str = '') {
    console.log("The string cannot be blank");
} else if (str.length <= 9) {
    console.log("The string must be at least 9 characters long");
} else if (str.length <= 10) {
    console.log("The string is long enough.");
}

quelle que soit la chaîne d'entrée, le programme affiche systématiquement "La chaîne doit comporter au moins 9 caractères". Ce comportement provient d'une utilisation incorrecte du symbole égal (=) pour les comparaisons d'égalité.

Erreur : mélange d'affectation et d'égalité

En JavaScript, le symbole égal (= ) est principalement utilisé pour l'affectation, pas pour les comparaisons d'égalité. Les comparaisons d'égalité doivent être effectuées à l'aide des opérateurs double égal (==) ou triple égal (===).

Code correct pour la comparaison d'égalité :

La version correcte de l'extrait de code doit utiliser les opérateurs d'égalité appropriés comme suit :

if (str === '') {
    console.log("The string cannot be blank");
} else if (str.length <= 9) {
    console.log("The string must be at least 9 characters long");
} else if (str.length <= 10) {
    console.log("The string is long enough.");
}

Le code révisé vérifie la longueur de la chaîne à l'aide des opérateurs corrects, fournissant le comportement attendu de sortie de différents messages en fonction du contenu de la chaîne.

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!

Déclaration:
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