100 votes

Javascript : différence entre une déclaration et une expression ?

J'ai demandé este Après avoir réfléchi à cette question, je me suis demandé où se trouve la frontière apparemment floue entre les termes "déclaration" et "expression". Toutes les déclarations sont-elles aussi des expressions ? D'où viennent les valeurs de retour dans une console REPL ? Elles ne semblent pas toujours avoir un sens intuitif. Bien sûr, si vous tapez 1+1 vous obtiendrez 2 mais d'autres fois, la logique n'est pas aussi évidente.

Étant donné que tout ce qui est tapé dans REPL produit un peu de cela signifie-t-il qu'elle peut être utilisée dans le code source JS à la fois comme une expression et une déclaration autonome ?

peut être une chaîne de code qui pourrait être utilisée pour _X_ dans l'extrait suivant peut également être utilisé pour les éléments suivants _Y_ et vice versa ? if(_X_) _Y_

0voto

Ershad Qaderi Points 127

Un fragment de code qui produit une valeur est appelé une expression. Toute valeur écrite littéralement (comme 22 ou "psychanalyse") est une expression. Une expression entre parenthèses est également une expression, tout comme un opérateur binaire appliqué à deux expressions ou un opérateur unaire appliqué à une expression.

Une expression correspond à un fragment de phrase en langage humain, une déclaration JavaScript correspond à une phrase complète. Un programme est une liste d'instructions.

Le type d'instruction le plus simple est une expression suivie d'un point-virgule. Ceci est un programme :

1 ; !faux ; Il s'agit pourtant d'un programme inutile. Une expression peut se contenter de produire une valeur, qui peut ensuite être utilisée par le code qui l'entoure. Une déclaration se suffit à elle-même, elle n'a de sens que si elle affecte le monde.

La déclaration pourrait avoir des effets secondaires.

https://eloquentjavascript.net/02_program_structure.html

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X