2016-09-21 2 views
0

J'essaie de comprendre du code javascript mais je ne comprends pas ce qui cause ce comportement.Chaînes Javascript entre parenthèses

Mon code est simple:

test ="s" + ("locomotion","maintenance","ave"); 
alert(test); 

Lorsque j'exécute le code ci-dessus, la chaîne retournée est "sauver" dans la case d'alerte. Quelle est la signification du code ci-dessus? Pourquoi les chaînes jointes prennent-elles la dernière chaîne avec "s"?

Comment appelez-vous cela et comment java-script sélectionne-t-il "ave" pour se joindre à "s"?

Merci.

+0

Qu'est-ce que vous essayez de faire réellement? Ce n'est pas comme ça que vous joignez des chaînes dans JS, les parenthèses représentent juste une expression à évaluer. – skyline3000

+0

J'ai trouvé ce code dans l'un des exemples. Lorsque j'essaie de tester cela en utilisant l'alerte, il retourne "enregistrer" dans la boîte d'alerte. Donc je veux comprendre comment s + ave a renvoyé la chaîne "save". pourquoi ne pas d'abord 1 ou deuxième chaîne avec "s"? – ahelpyguy

Répondre

0

Votre code fonctionne comme prévu. Dans l'alerte, vous obtenez save et c'est parce que vous rejoignez le s et ave en utilisant l'opérateur +.

Dans votre expresion ("locomotion","maintenance","ave"), ave est sélectionné, vous l'opération que vous effectuez est test = "s" + "ave", vous obtenez save sur l'alerte

0

Voici comment test est calculé:

"s" concatenated with ("locomotion", "maintenance", "ave"); 

"locomotion", "maintenance" is evaluated to "maintenance" 
"maintenance", "ave" is evaluated to "ave" 
("ave") is evaluated to "ave" 

"s" + "ave" is evaluated to "save" 

Il arrive parce que le , is an operator qui prend deux paramètres. Il a évalué les deux opérandes et renvoyé la valeur de la seconde.

L'opérateur virgule évalue ses deux opérandes (de gauche à droite) et renvoie la valeur du deuxième opérande.

0

C'est juste un opérateur de virgule qui renvoie la valeur de la dernière chaîne selon votre question. Veuillez vous référer à ce document comme mentionné par Andreas.

Comma Operation