Maison  >  Article  >  interface Web  >  Explication détaillée de la définition et de l'utilisation des expressions arithmétiques dans le cours de base JavaScript

Explication détaillée de la définition et de l'utilisation des expressions arithmétiques dans le cours de base JavaScript

伊谢尔伦
伊谢尔伦original
2017-07-19 10:10:581384parcourir

Les opérateurs arithmétiques de base sont *, /, %, +, -. À l'exception de l'addition +, les autres opérateurs sont très simples. Ils convertissent simplement les opérateurs en nombres lorsque cela est nécessaire, puis calculent le produit, le quotient, le reste (module) et la différence. Toutes les opérations qui ne peuvent pas être converties en nombres seront converties en valeurs NaN. Si l'opérande (ou résultat de la conversion) est une valeur NaN, le résultat de l'opération arithmétique est également NaN

L'opérateur "/" divise le deuxième opérande par le premier opérande, si vous les avez utilisés pour distinguer les entiers et les langages de programmation à virgule flottante. Ensuite, en divisant un entier par un entier, le résultat souhaité est également un entier. Tous les nombres en JavaScript sont de type à virgule flottante et les résultats des opérations de division sont également de type à virgule flottante. Par exemple, le résultat de 5/2 est 2,5 et non 2. Le résultat d’une opération qui divise par 0 est l’infini positif ou l’infini négatif. Et le résultat de 0/0 est NaN. Toutes ces opérations sont sans erreur.

L'opérateur "%" calcule le module du premier opérande au deuxième opérande. Autrement dit, c'est le reste du premier opérande divisé par le deuxième opérande. Le signe du résultat reste le même que le signe du premier opérande (le dividende). Par exemple, le résultat de 5%2 est 1 et le résultat de -5%2 est -1.

Les opérandes de l'opérateur reste sont généralement des entiers, mais ils fonctionnent également avec des nombres à virgule flottante. 6,5%2,1 s'avère être 0,2. (0.1999999999999973)

i. Opérateur "+"

L'opérateur d'addition binaire "+" peut ajouter deux nombres et peut également effectuer des opérations de concaténation de chaînes :

1+2 //=> 3
"hello" + "" + "there" // =>"hello there"
"1"+"2" //=>"12"

Quand les deux opérandes sont des nombres ou des chaînes, le résultat du calcul est évident. Cependant, dans d'autres cas, certaines conversions de type nécessaires doivent être effectuées. Et le comportement de l'opérateur dépend du résultat de la conversion de type. Techniquement parlant, le comportement de l'opérateur d'addition est le suivant :

Si un opérande est un objet, l'objet suivra les règles de conversion des objets en valeurs primitives et deviendra des valeurs de classe primitives (voir Chapitre 3, Section 8, Section 3) . Les dates sont converties par la méthode d'objets toString() et les autres objets sont convertis par la méthode valueOf() (si la méthode valueOf() renvoie une valeur primitive). Étant donné que la plupart des objets n'ont pas de méthode valueOf() disponible, ils utiliseront la méthode toString() pour effectuer la saisie et l'échange
Après avoir converti l'objet en valeur d'origine, si l'un des opérandes est une chaîne, l'autre An l'opérande est également converti en chaîne. Effectuez ensuite la concaténation des chaînes.
Sinon, les deux opérandes sont convertis en nombres (ou NaN) puis l'opération d'addition est effectuée.
Voici quelques exemples

1 + 2 //=>3 加法
"1" + "2" //=>"12" 字符串连接
"1" + 2 //=>"12"数字转换为字符串后进行字符串连接
1 + {} //=>"1[object object]":对象转换为字符串后进行字符串连接
true + true //=>2 布尔值转换为数字后做加法
2 + null //=>2 null转换为0后做加法
2 + undefined //=>NaN undefined转换为NaN做加法

Enfin, quelque chose de spécial à noter. Lorsque l'opération d'addition est utilisée avec des chaînes, l'effet de l'addition sur l'ordre des opérations doit être pris en compte. C'est-à-dire que le résultat de l'opération dépend de l'ordre d'opération des opérateurs, tels que

1 + 2 + "bmice" //=> "3 bmice"
1 + (2 + "bmice") => "12bmice"

ii Opérateur unaire

L'opérateur unaire agit sur un seul opérande. et produire une nouvelle valeur. En JavaScript, les opérateurs unaires ont une priorité élevée et sont associatifs à droite. Cette section décrit les opérateurs unaires (+, -, ++ et --), qui convertissent les opérations en nombres si nécessaire. A noter que + - est un opérateur unaire et un opérateur binaire,

addition unaire +

L'opérateur d'addition unaire convertit le numéro d'opérande en nombre (ou NaN), et renvoie ceci nombre converti. Si l'opérande lui-même est un nombre, ce nombre est renvoyé directement.

Soustraction unaire-

Lorsque le signe - est utilisé comme opérateur unaire, il convertira l'opérande en nombre selon les besoins, puis changera le signe du résultat de l'opération,

increment + +

L'opérateur d'incrémentation "++" effectue une opération d'incrémentation (+1) sur son opérande, qui est une lvalue (variable, élément de tableau ou attribut d'objet). Les opérateurs convertissent les opérandes en nombres. Ajoutez ensuite 1 au nombre et réaffectez la valeur ajoutée à une variable, un élément de tableau ou une propriété d'objet.

La valeur de retour de l'opération incrément ++ dépend de sa position dans l'opérande.

Lorsque l'opérateur est avant l'opérande, on l'appelle l'opérateur "pré-incrémenté". Il effectue un calcul incrémental sur l'opérande et renvoie la valeur calculée.

Lorsque l'opérateur est après l'opérande, on l'appelle un opérateur "post-incrémenté". Il effectue un calcul incrémental sur l'opérande mais renvoie une valeur non incrémentée. Tel que

var i = 1,j = ++i //Les valeurs de i et j sont toutes deux 2
var i = 1,j = i++ //i vaut 2; , j vaut 1
Il est à noter que tout comme ++x et la somme x=x+1, l'opérateur "++" n'effectue jamais de concaténation de chaînes, il convertit toujours l'opérande en nombre et l'incrémente de 1 . Si x est la chaîne "1", le résultat de ++x est le nombre 2, et x+1 est la chaîne "11"

La méthode de fonctionnement de décrémentation et d'incrémentation est la même, elle convertit. l'opérande dans un tableau, puis soustrayez 1.

iii. Opérateurs au niveau du bit

Les opérateurs au niveau du bit peuvent effectuer des opérations au niveau du bit de niveau inférieur sur des données binaires représentées par des nombres. Bien qu’il ne s’agisse pas d’opérations mathématiques pures traditionnelles, elles sont classées ici comme opérateurs arithmétiques car elles opèrent sur des types numériques et renvoient des nombres.

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