La puissance de JavaScript: Les opérateurs ont conclu
Opérateurs logiques
Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable result (parce que les opérateurs de comparaison de produire des valeurs booléennes). Comme vous pouvez le voir, en utilisant les opérateurs de comparaison ne peut pas produire un état complexe, mais en utilisant un opérateur logique avec les opérateurs de comparaison peuvent former un énoncé tel que, par exemple, si x est inférieur à y, x est égal à une certaine valeur , et y est supérieure à une certaine valeur, produire de véritables, sinon produire de faux. Comme nous l’avons dit, les opérateurs logiques et de comparaison sont largement utilisés pour aider à contrôler le flux d’exécution et de scripts avec des boucles (discuté dans les prochains articles dans les détails) Alors prenons un regard sur les trois opérateurs logiques disponibles.
Exemple Opérateurs logiques
Voici un exemple qui explique les opérateurs logiques pour l’instant (nous allons utiliser tout le temps avec des instructions if / else et les déclarations de boucle, mais pour l’instant un simple exemple est dans l’ordre). Copiez le code suivant (ou l’écrire) à un document HTML et l’enregistrer.
Chargez le document avec votre navigateur et vous obtiendrez les trois boîtes de message, respectivement.
Nous avons déclaré x et lui a attribué la valeur 5, puis y était affecté à la valeur 8, alors z reçu la valeur 13. Le résultat instruction var = (y> x & & z == (x + y)); déclarés et assigné la vraie valeur de la variable de résultat en évaluant l’expression à la droite de l’opérateur d’affectation. Dans cette expression, nous avons utilisé les opérateurs de comparaison supérieure ou égale à à l’état de la relation entre x, y et z. Nous avons aussi combiné l’opérateur logique AND (& &) pour former une expression un peu plus complexe, qui est évaluée à vrai que si le premier opérande et le second opérande (de l’opérateur et) la valeur true.
Dans cet exemple, y est supérieur à x, donc il produit vrai, et z est égal à x + y, donc il produit également vrai. Par conséquent, l’expression entière est évaluée à true. Cette valeur booléenne est assignée à la variable result et affiché dans la boîte de message en utilisant l’alerte déclaration (« y> x & & z == (x + y) est » + result); qui concatène une valeur de chaîne avec la valeur de la variable result.
Il n’ya rien de spécial au sujet de la déclaration suivante qui utilise le OU logique opérateur | |. Il évalue seulement son opérande de gauche, qui produit la valeur false, puis il évalue son opérande de droite qui produit la vraie valeur Parce que l’opérateur |. | Produit la valeur vrai si l’un de ses opérandes true, nous voyons vraie affiché dans la boîte de message. Le résultat instruction var = 0; assigne la valeur numérique 0 au résultat variable (ce qui signifie faux), puis d’alerte (résultat!); Affiche une boîte de message qui inverse la valeur de la variable résultat. La valeur était fausse donc! False signifie vrai. Je pense que ça devrait être facile maintenant.
L’opérateur typeof
L’opérateur typeof (écrit en minuscules, car Javascript est sensible à la casse) est un type spécial de l’opérateur que nous n’avons pas encore discuté. Pour l’instant, nous pouvons dire que tous les opérateurs sont des symboles, et typeof est un exemple de cela. L’opérateur typeof retourne le type de données de son opérande, mais de l’utiliser, vous devez placer l’opérande entre parenthèses (nous allons parler de l’utilisation parenthèses toute la série alors ne pas s’inquiéter de ce que signifie ce moment) comme ceci: typeof (opérande ) comme dans l’exemple suivant.
Lorsque vous enregistrer et de charger ce code dans votre navigateur, vous obtiendrez le texte suivant écrit à la page Web.
Comme vous l’aurez deviné les expressions typeof (unNombre), typeof (aString) et typeof (unBooleen) juste retourner le type de données de l’opérande (le résultat variable) de l’opérateur typeof. Notez que l’opérateur typeof renvoie deux types de données plus (objet et la fonction), mais nous en parlerons le moment venu.
L’opérateur void
L’opérateur void est utilisé pour définir l’expression d’exécuter sans retourner aucune valeur. Jetons un coup d’oeil:
Enregistrer et charger ce code et vous remarquerez que la variable est assignée unNombre la valeur undefined.
L’opérateur ternaire?
Cet opérateur est appelé l’opérateur ternaire conditionnel. Afin de comprendre pourquoi ils appellent ça conditionnelle vous avez besoin de jeter un oeil à ses trois opérandes. Le premier opérande est une expression booléenne. Quand il évalue à true la déclaration dans le second opérande est exécuté, et quand il évalue à faux l’énoncé dans le troisième opérande exécutée. Elle prend la forme
Notez que nous ne pouvons pas mettre la virgule après le second opérande parce que le symbole deux points (:). Dans l’opérateur sépare le deuxième et le troisième opérande Si vous mettez dans le point-virgule, vous obtiendrez une erreur, vous avez besoin de mettre un virgule à la troisième opérande. Jetons un oeil à un exemple:
Enregistrer et charger le code ci-dessus et vous obtiendrez ce résultat.
C’est très simple, l’expression x <10 & & x> 5 est évaluée, et si elle est vraie, alors le deuxième opérande est exécutée, qui écrit à la page Web de la chaîne « Oui, x est inférieur à 10. » Si l’expression évaluée à false, puis le troisième opérande est exécuté (et non le second).
Priorités des opérateurs et associativité
Je sais que beaucoup d’entre vous se demandent si l’expression 6 + 2 * 4 donne la valeur de 14 ou 32 de la valeur? En fait, il produit la valeur 14 (non 32), car l’interprète sait à l’avance quels opérateurs doivent être fait en premier, dont les opérateurs doivent être effectués suivant, et ainsi de suite. L’interprète sait de quoi les opérateurs à effectuer d’abord parce que chaque opérateur a une priorité (ordre d’exécution) qui vient avant ou après les autres opérateurs. Pour notre exemple, l’opérateur de multiplication a une priorité plus élevée que l’opérateur d’addition, alors l’opération de multiplication est effectuée en premier, qui produit la valeur 8, puis l’opération d’addition qui vient après, donc 6 + 8 = 14.
L’opérateur d’affectation (et ses variantes) est la plus faible priorité. Cela a un sens parce que nous avons besoin dans une déclaration, c’est que l’interprète d’évaluer et de calculer l’expression, puis affectez la valeur de la variable. Il ya une façon que nous pouvons changer le comportement et d’instruire la préséance de l’interprète pour effectuer les calculs dans l’ordre que nous voulons;. Nous utilisons les parenthèses pour délimiter l’expression qui l’emporte sur la préséance En fait, nous devrions faire cela de toute façon à rendre le code plus lisible. Pour notre exemple nous pourrions produire de la valeur 32 en plaçant les parenthèses autour de la plus faible expression préséance (6 + 2) * 4.
En faisant cela, nous demandons à l’interprète d’ajouter 6 et 2, puis multipliez par 4, alors nous obtenons 32. Alors les parenthèses est lui-même un opérateur avec la plus haute priorité (avec plus de deux opérateurs, nous allons discuter de cela plus tard) C’est pourquoi l’interpréteur évalue l’expression qui utilise la première parenthèse..
Un opérateur a une associativité qui définit ce que la direction de l’opérateur utilise pour effectuer l’opération. Par exemple, l’opérateur d’addition effectue ses opérations de gauche à droite. Quand nous écrire quelque chose comme 4 + 5 + 7, nous n’avons utilisé que l’opérateur d’addition, alors la priorité est égale, et l’interprète doit utiliser l’associativité de l’opérateur afin de savoir comment il va produire une valeur de cette expression. Parce que l’opérateur d’addition a une associativité de gauche à droite, il va commencer l’évaluation de gauche à droite, soit 4 de plus 5 (égal à 9) et 7 est égale à 16.
Nous avons deux types d’associativité, de gauche à droite comme l’opérateur d’addition et de droite à gauche comme l’opérateur d’affectation, qui commence par évaluer la valeur sur la droite et l’affecte à la variable de gauche. Une expression comme x = z = 10 affecte la valeur 10 à z, puis assigne z à x.
Le tableau suivant répertorie tous les opérateurs que nous avons discuté avec leur priorité et l’associativité. La plus haute priorité des opérateurs commence à 0 et augmente pour les opérateurs de priorité inférieure. La colonne associativité spécifie si l’opérateur travaille à partir de gauche à droite ou de droite à gauche.
Articles supplémentaires "Javascript"
Présentation de la bibliothèque JavaScript de jQuery
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]
Paginer enregistrements de la base avec la pagination jQuery rapide Plug-in
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]
Propriétés et méthodes des tableaux JavaScript personnalisé 2D
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]
Héritage d’une classe multi niveaux en Java
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]
La puissance de JavaScript: Concepts de base
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]
Milieux avec Javascript Modenizr pour CSS3 et HTML5
Opérateurs logiques Les opérateurs logiques sont utiles dans des situations où vous voulez plus d’une expression de comparaison dans un communiqué. Au lieu d’utiliser une expression que la présente déclaration: résultat = x <y; avec les opérateurs logiques de l’expression x <y peut être évaluée et la valeur produite booléenne est assignée à la variable [...]