Maison > interface Web > js tutoriel > Pourquoi '1' 1 est-il égal à '11' en JavaScript, mais '1' - 1 est-il égal à 0 ?

Pourquoi '1' 1 est-il égal à '11' en JavaScript, mais '1' - 1 est-il égal à 0 ?

Susan Sarandon
Libérer: 2024-11-19 02:27:03
original
952 Les gens l'ont consulté

Why does

Comprendre les différences de concaténation et de soustraction en JavaScript

En JavaScript, gérer les opérateurs plus ( ) et moins (-) entre les chaînes et les nombres diffère, ce qui conduit souvent à la confusion. Pour clarifier ce comportement, examinons deux exemples :

console.log("1" + 1); // Output: "11"
console.log("1" - 1); // Output: 0
Copier après la connexion

Concaténation de chaînes ( )

Lors de l'utilisation de l'opérateur plus entre une chaîne ("1") et un nombre (1), JavaScript effectue une concaténation de chaînes. Dans ce cas, il convertit la valeur numérique en chaîne ("1") et l'ajoute à la chaîne existante ("1"), ce qui donne la sortie "11".

Soustraction numérique ( -)

Cependant, lors de l'utilisation de l'opérateur moins, JavaScript donne la priorité aux opérations numériques. Puisque la soustraction ne peut pas être effectuée sur des chaînes, elle convertit implicitement le deuxième « 1 » (une chaîne) en nombre avant d’effectuer la soustraction. Par conséquent, JavaScript soustrait 1 du 1 numérique, ce qui donne un résultat de 0.

Remarque supplémentaire :

En JavaScript, l'opérateur plus peut être surchargé pour effectuer soit concaténation de chaînes ou addition numérique, selon les types de données des opérandes. Cependant, l'opérateur moins est strictement utilisé pour la soustraction numérique, d'où son comportement distinct lorsque l'on travaille avec des chaînes.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal