1. Opérateur univarié
1. Opérateurs d'auto-augmentation et d'autodécréation: divisé en avant et à l'arrière;
Pré-type: ++ a; - a;
Post-type: a ++; un--;
exemple:
La copie de code est la suivante:
<script type = "text / javascript">
var a, b, i = 1, j = 1;
a = i ++;
b = ++ j;
alert ("a =" + a + ", i =" + i + ", b =" + b + ", j =" + j); // a = 1, i = 2, b = 2, j = 2
</cript>
où a = i ++ équivaut à a = i; i = i + 1;
Et b = ++ j, équivalent à j = j + 1; b = j;
2. Opérateurs d'addition et de soustraction unary: a = + i; a = -i;
La copie de code est la suivante:
<script type = "text / javascript">
var a, b, i = 1, j = 1;
a = + i;
b = -j;
alert ("a =" + a + ", i =" + i + ", b =" + b + ", j =" + j); // a = 1, i = 1, b = -1, j = 1
</cript>
Pour les entiers, une soustraction à un chiffre équivaut à prendre un nombre négatif.
2. Opérateur de bits
1. Bitwise non ~ (pas)
Non, c'est-à-dire, tous les nombres inverses sous forme binaire.
Utilisation commune: L'opération de bit ne fait pas essentiellement un nombre négatif, puis soustraire 1
2. Bitwise ou | (OU)
Ou, c'est-à-dire que tous les nombres et nombres cibles sont bit ou exploités sous forme binaire.
Utilisation commune: il est généralement utilisé pour l'attribution inconditionnelle des nombres binaires. Par exemple: un nombre | 1 est équivalent au nombre impair le plus proche du numéro actuel.
3. Bitwise & & (et)
Et, c'est-à-dire que tous les nombres et les nombres cibles sont bit dans une forme binaire.
Utilisation commune: il est généralement utilisé pour les opérations de prise binaire, telles qu'un nombre et 1, si le résultat est 0, c'est un nombre pair, et s'il est 1, c'est un nombre impair.
4. Bitwise xor ^ (xor)
Exclusif ou signifie que tous les nombres sont comparés au nombre cible sous forme binaire. Seuls deux nombres sont différents, c'est-à-dire, un seul chiffre stocke 1 lorsque 1 est 1, et renvoie 0 si deux nombres sont les mêmes.
Utilisation commune: le fonctionnement inverse de l'opération XOR est lui-même, c'est-à-dire le résultat final du numéro XOR est inchangé deux fois. Peut être utilisé pour un chiffrement simple ou des opérations numériques interactives.
5. Déplacer à gauche <<
Déplacer à gauche, c'est-à-dire déplacer tous les nombres vers la gauche sous forme binaire, déplacer le nombre de chiffres correspondant, déplacer la position élevée (défaussez-vous et remplir la position zéro en position basse. Le déménagement à gauche n'affectera pas le bit de signe.
Signification mathématique: sur la prémisse que les nombres ne débordent pas, pour les nombres positifs et négatifs, le déplacement de gauche est équivalent à se multiplier par 2 à la puissance de 1, et le déplacement de N bits gauche équivaut à multiplier par 2 à la puissance de n.
6. Déplacez à droite
6.1 Signed Signet Shift >>: Autrement dit, déplacez toutes les valeurs vers la droite sous forme binaire mais conservez les bits de signe.
Signification mathématique: sur la prémisse que les nombres ne débordent pas, pour les nombres positifs et négatifs, le déplacement à droite est équivalent à la division par 2 à la première puissance, et le déplacement des bits N droits est équivalent à la division par 2 à la puissance N.
6.2 Shift à droite non signé >>>: Autrement dit, déplacez toutes les valeurs, y compris les bits de signe, vers la droite sous forme binaire.
Pour les nombres positifs, les résultats sont les mêmes;
Pour les nombres négatifs, comme les nombres négatifs sont représentés dans leur complément de valeur absolue, le résultat de changement droit non signé sera très important.
3. Opérateur booléen
1. Logical non logique!
La logique n'est pas utile! Indique que tout type de valeur avec ECMAScript peut être appliqué et que la non-opération logique renvoie une valeur booléenne (true / false). L'opérateur convertit d'abord son opérande en valeur booléenne puis l'inverse.
! ! Équivalent à la fonction boolean ().
Un ensemble de règles pour la fonction de transformation booléenne ().
La valeur convertie en true est convertie en false
Booleanttruefalse
String toute chaîne non vide "" (chaîne vide)
Numéro de toute valeur numérique non nulle (y compris Infinity) 0 et NAN
Objet tout objet nul
Indéfini pas indéfini
2. Logic et &&
Il y a deux opérandes pour la logique et il y a deux opérandes.
La logique et les opérations peuvent être appliquées à tout type d'opérande, pas seulement des booléens. Lorsqu'un opérande n'est pas un booléen, la logique et les opérations ne renvoient pas nécessairement un booléen; Pour le moment, il suit les règles suivantes:
1. Si le premier opérande est un objet, le deuxième opérande est retourné;
2. Si le deuxième opérande est un objet, l'objet ne sera retourné que si le résultat d'évaluation du premier opérande est vrai;
3. Si les deux opérateurs sont des objets, le deuxième opérande est retourné; Suivez la première règle.
4. Si un opérande est nul, retournez null;
5. Si un opérande est nan, retour nan;
6. Si un opérande n'est pas défini, un non-défini n'est renvoyé.
La logique et les opérations sont des opérations de court-circuit, c'est-à-dire si le premier opérande peut déterminer le résultat, le deuxième opérande ne sera plus évalué. (Il peut être compris comme deux opérations de retour interne). Par conséquent, lorsque les règles 4, 5 et 6 sont confrontées, le principe de fonctionnement de court-circuit est suivi.
La copie de code est la suivante:
var nul = null;
var na = nan;
test var;
test = na && nul;
Document.Write (test); // nan
La copie de code est la suivante:
var nul = null;
var na = nan;
test var;
test = nul && na;
Document.Write (test); //nul
3. Logique ou ||
Logique ou a deux opérandes.
Logique ou similaire à la logique, les opérations peuvent être appliquées à tout type d'opérande, pas seulement des booléens. Dans le cas où un opérande n'est pas un booléen, une logique ou une opération ne renvoie pas nécessairement un booléen; À ce stade, il suit les règles suivantes:
1. Si le premier opérande est un objet, le premier opérande est retourné;
2. Si le résultat du premier opérande est faux, le deuxième opérande est retourné;
3. Si les deux opérateurs sont des objets, le premier opérande est retourné, après la première règle.
4. Si les deux opérandes sont nuls, retournez null;
5. Si les deux opérandes sont nan, retourne nan;
6. Si les deux opérandes ne sont pas définis, un non-défini n'est renvoyé.
La logique ou l'opération est une opération de court-circuit, c'est-à-dire si le premier résultat de l'opérande est vrai, alors le deuxième opérande ne sera plus évalué.
Nous pouvons utiliser cette propriété de logique ou pour éviter d'attribuer des valeurs nulles ou non définies aux variables
Par exemple: var myObject = FirstObject || SecondObject
Si FirstObject n'est pas nul, FirstObject est affecté à MyObject, sinon la valeur de SecondObject est attribuée à MyObject.
Le contenu ci-dessus concerne cet article, j'espère qu'il sera utile à tout le monde