[[web:javascript|{{ :iconemaison.jpg?nolink&25|Accueil JavaScript}}]]
==== Qu'est-ce que le JavaScript ? ====
[Mise à jour le 19/6/2021]
* **Sources** sur **MDN Web Docs**
* JavaScript
* Outils de développement
* **Lectures connexes**
* [[web:dom|Fonctionnement du navigateur et DOM]]
----
Le **JavaScript** est un langage de programmation sous forme de scripts((Sans phase de compilation du code source vers un langage de plus bas niveau)) [vidéo]. C'est également un langage évènementiel((À l'écoute des évènements : clic de souris, etc.)) [vidéo] et orienté objet.
Côté client, le JavaScript est principalement utilisé dans les **pages web** pour les rendre **interactives** et **dynamiques** (messagerie, cartographie, etc.). Côté serveur, il peut être utilisé comme serveur web et langage de programmation.
{{ :web:javascript:brendan_eich.jpg?nolink&100|}}
Le JavaScript a été inventé par **Brendan Eich** en 1995 et standardisé en 1997 par l'organisation ECMA Internationale sous le nom ECMAScript.
Le JavaScript est un langage dit **client-side**, c'est-à-dire que les scripts sont exécutés par le navigateur chez l'internaute (le **client**). [Vidéo]
{{ :web:javascript:js.png?nolink |}}
{{ :web:javascript:interrogation.png?nolink|}}
* **Possibilités de JS** \\ Le JavaScript **utilisé côté client** et exécuté par le navigateur dans une page web est parfaitement adapté :
* À l'assistance à la saisie des formulaires
* À la sauvegarde de données sur le poste local
* À la gestion des nombres, dates et heures
* Aux animations graphiques
* Aux appels asynchrones vers le serveur pour actualiser la page
{{ :web:javascript:securite.png?nolink|}}
* **Limites et sécurités** \\ Le JavaScript est exécuté localement à l'intérieur d'un navigateur qui sécurise son usage. Il n'est pas possible, **sans une action volontaire supplémentaire de l'utilisateur** :
* à un site d'accéder au disque dur de l'utilisateur (hormis une zone strictement réservée au stockage de données site par site);
* à un site d'accéder à la zone de stockage ou aux cookies d'un autre site;
* à un site de lire l'historique de navigation, les mots de passe ou les favoris de l'utilisateur;
* à un virus ou un logiciel espion de s'installer ou d'effacer des fichiers;
* à un script de faire planter le navigateur ou le PC;
* à un script d'abîmer ou de détruire le matériel de l'utilisateur.
JavaScript reprend la syntaxe du langage C.