Maison  >  Article  >  interface Web  >  Jetons un coup d'œil aux différences entre ECMAScript et JavaScript

Jetons un coup d'œil aux différences entre ECMAScript et JavaScript

coldplay.xixi
coldplay.xixiavant
2021-01-27 17:50:472461parcourir

Jetons un coup d'œil aux différences entre ECMAScript et JavaScript

Recommandations d'apprentissage gratuites : tutoriel vidéo js

1. Introduction à ECMAScript

ECMAScript est un langage de programmation de script standardisé par Ecma International (anciennement la European Computer Manufacturers Association, le nom anglais est European Computer Manufacturers Association) via ECMA-262. Ce langage est largement utilisé sur le World Wide Web. Il est souvent appelé JavaScript ou JScript, il peut donc être compris comme un standard pour JavaScript, mais en fait ces deux derniers sont des implémentations et des extensions de la norme ECMA-262.

1.1 ECMA International

ECMA International est une organisation de normalisation de l'information et des télécommunications avec un système d'adhésion international. C'est une organisation étroitement liée aux entreprises, donc les normes fixées par. Les normes internationales Ecma sont principalement formulées et promues par diverses entreprises. En 1997, l'organisation a publié la norme MCMA-262, qui formulait la spécification du langage ECMAScript. C'est de là que vient ECMAScript.

1.2 Norme ECMA-262 (norme ES)

ECMA-262 est une norme de spécification pour les langages de script développés par le groupe ECMA TC39. Les membres du TC39 sont composés de programmeurs issus d'entreprises intéressées par la programmation de scripts.

La norme ECMA-262 définit la spécification du langage ECMAScript. Cette norme est également appelée spécification du langage ECMAScript, ou spécification ES en abrégé.

La spécification ES a été publiée en 1997 et constitue désormais la huitième version. ECMAScript est basé sur plusieurs technologies primitives, notamment JavaScript (Netscape Navigator 2.0) et JScript (Microsoft IE3).

1.3 Le processus de standardisation de JavaScript

Vers 1995 : Internet éclate et les applications Web émergent sans cesse A cette époque, à condition d'enregistrer un .com. nom de domaine, vous pourriez en gros devenir riche, tout comme la blockchain et l'intelligence artificielle actuelles. À cette époque, il existait trois versions courantes de JavaScript :

(1) JavaScript dans Netscape Navigator 3.0.

(2) JScript dans IE.

(3) ScriptEase dans CEnvi.

Contrairement à d'autres langages de programmation, JavaScript n'a pas de standard pour unifier sa syntaxe ou ses fonctionnalités, et ces trois versions différentes ne font que mettre en évidence ce problème. Alors que les inquiétudes augmentent au sein de l’industrie, il est clair que la normalisation de ce langage est impérative.

1997 : JavaScript 1.1 est soumis sous forme de projet à l'Association européenne des fabricants d'ordinateurs (ECMA). Le comité technique 39 (TC39) a été nommé pour « normaliser la syntaxe et la sémantique d'un langage de script à usage général, multiplateforme et indépendant du fournisseur ». La première version d'ECMA-262 a été élaborée, définissant un nouveau langage de script appelé ECMAScript.

1998 : L'Organisation internationale de normalisation et la Commission électrotechnique internationale (ISO/IEC) ont également adopté ECMAScript comme norme (ISO/IEC-16262). La deuxième version d'ECMA-262 (ES2) a été publiée la même année. La deuxième version n'ajoutait pratiquement pas de nouvelles fonctionnalités.

2002 : ECMA-262 troisième édition (ES3), expressions régulières puissantes nouvellement introduites, meilleur traitement des chaînes, nouvelles instructions de contrôle, gestion des exceptions try/catch, définitions d'erreurs plus strictes, formatage de la sortie numérique et modifications mineures en prévision de la croissance future des langues. La troisième version était très largement utilisée à l’époque, et presque tous les navigateurs supportaient le standard ES3.

ECMA-262 version 4 (ES4) est mort prématurément et certaines fonctions ont été migrées vers ES6.

2009 : sortie de la cinquième édition de l'ECMA-262 (ES5). De nombreuses fonctionnalités ont été ajoutées sur la base d'ES3 : notamment les propriétés des accesseurs, la création et l'inspection réfléchies des objets, le contrôle programmatique des propriétés, des fonctions supplémentaires de manipulation de tableaux, la prise en charge du format de codage d'objet JSON et la vérification améliorée des erreurs et le mode strict de sécurité du programme.

2011 : Approuvé comme norme internationale ISO/IEC 16262 :2011. La version ES5.1 a été publiée la même année (avec quelques mises à niveau et optimisations de ES5) et a été approuvée par MCMA-262 et ISO/IEC.

2015 : ECMA-262 sixième édition (ES6 ou ES 2015 Language Spécification) , on peut dire que ES6 a commencé à se précipiter après la sortie d'ES3 en 2000. En raison de sa disparition prématurée de ES4, certaines fonctionnalités d'ES4 n'ont été publiées qu'ES6, la sixième version est donc entièrement le résultat de quinze années de travail acharné.

ES6Fournit une meilleure prise en charge des grandes applications, en créant des bibliothèques Lib et en utilisant ECMAScript comme cible de compilation pour d'autres langages. ES6 ajoute principalement les fonctionnalités suivantes : Les améliorations majeures incluent des modules, des déclarations de classe, la portée des blocs lexicaux, des itérateurs et des générateurs, des promesses de programmation asynchrone, des modèles de déstructuration et des appels de fin appropriés. La bibliothèque ECMAScript intégrée a été étendue pour prendre en charge des abstractions de données supplémentaires, notamment des cartes, des ensembles et des tableaux numériques binaires, ainsi que l'utilisation de chaînes et d'expressions régulières.

2. Introduction à JavaScript

JavaScript est un langage de script littéral. Il s'agit d'un langage basé sur un prototype à typage dynamique, faiblement typé, avec prise en charge intégrée des types. . Son interpréteur s'appelle le moteur JavaScript, qui fait partie du navigateur et est largement utilisé dans les langages de script côté client. Il a été utilisé pour la première fois sur les pages Web HTML (une application sous Standard Universal Markup Language) pour ajouter des fonctions dynamiques aux pages Web HTML. .

JavaScript est un langage de script multiplateforme universel conforme à la norme ECMA-262 (norme ES), autrement dit, c'est un dialecte d'ECMAScript. Afin d'obtenir des avantages techniques, Microsoft a lancé JScript et CEnvi a lancé ScriptEase, qui peut également s'exécuter sur le navigateur comme JavaScript. Afin d'unifier les spécifications, JavaScript est également appelé ECMAScript car il est compatible avec le standard ECMA.

La marque JavasSript appartient à Oracle car Sun a été acquis par Oracle. JavaScript a été enregistré par Sun dans les premières années et représente le langage JavaScript. Mais la première invention de JavaScript fut Netscape. En 1995, il a été conçu et implémenté pour la première fois sur le navigateur Netscape Navigator par Brendan Eich de Netscape. Comme Netscape travaillait avec Sun, la direction de Netscape voulait qu'il ressemble à Java, d'où le nom JavaScript. Mais en fait son style grammatical est plus proche de Self et Scheme.

2.1 Fonctionnalités de base de JavaScript

JavaScript est un langage de script qui appartient à Internet. Il a été largement utilisé dans le développement d'applications Web et est souvent utilisé pour ajouter divers. fonctionnalités aux pages Web. La fonction dynamique offre aux utilisateurs un effet de navigation plus fluide et plus esthétique. Habituellement, les scripts JavaScript réalisent leurs fonctions en les intégrant dans HTML.

(1) Un langage de script interprété (le code n'est pas précompilé).

(2) est principalement utilisé pour ajouter des comportements interactifs aux pages HTML (une application sous Standard Universal Markup Language).

(3) Il peut être directement intégré dans des pages HTML, mais l'écrire sous forme de fichier JS séparé est bénéfique pour la séparation de la structure et du comportement.

(4) Fonctionnalité multiplateforme, avec la prise en charge de la plupart des navigateurs, elle peut fonctionner sur plusieurs plates-formes (telles que Windows, Linux, Mac, Android, iOS, etc.).

Le langage de script Javascript, comme les autres langages, possède ses propres types de données de base, expressions et opérateurs arithmétiques, ainsi que le cadre de base du programme. Javascript fournit quatre types de données de base et deux types de données spéciaux pour le traitement des données et du texte. Les variables fournissent un emplacement pour stocker les informations et les expressions peuvent effectuer un traitement d'informations plus complexe.

2.2 Composants JavaScript

JavaScript se compose de trois parties : ECMAScript, DOM et BOM, comme indiqué ci-dessous.

Jetons un coup dœil aux différences entre ECMAScript et JavaScript

(1) ECMAScript : Décrit la syntaxe et les objets de base du langage.

(2) DOM : Document Object Model (DOM), décrivant les méthodes et interfaces de traitement du contenu Web.

(3) BOM : Browser Object Model (BOM), décrivant les méthodes et interfaces pour interagir avec le navigateur.

2.2.1 Modèle objet de document DOM

Le modèle objet de document (DOM) est un standard de programmation standard pour le traitement des langages de balisage extensibles recommandés par l'interface de l'organisation W3C. Sur une page Web, les objets qui organisent la page (ou le document) sont organisés dans une structure arborescente. Le modèle standard utilisé pour représenter les objets dans le document est appelé DOM. L'histoire du Document Object Model remonte à la « guerre des navigateurs » entre Microsoft et Netscape à la fin des années 1990. Afin de rivaliser pour la vie ou la mort en JavaScript et JScript, les deux parties ont doté les navigateurs de fonctions puissantes à grande échelle. Microsoft a ajouté de nombreux éléments propriétaires à la technologie Web, notamment VBScript, ActiveX et le format DHTML propre à Microsoft, ce qui empêche de nombreuses pages Web de s'afficher correctement sur des plates-formes et des navigateurs non Microsoft. DOM est le chef-d’œuvre brassé à cette époque.

2.2.2 Modèle objet du navigateur BOM

BOM (Browser Object Model) est le modèle objet du navigateur. BOM fournit des objets qui interagissent avec les fenêtres du navigateur indépendamment du contenu ; puisque BOM est principalement utilisé pour gérer la communication entre les fenêtres, son objet principal est window. BOM se compose d'une série d'objets liés, et chaque objet fournit de nombreuses méthodes et attributs ; L'organisme de normalisation pour la syntaxe JavaScript est l'ECMA, et l'organisme de normalisation pour le DOM est le W3C. BOM faisait à l'origine partie du standard du navigateur Netscape.

Certains objets qui interagissent avec la fenêtre du navigateur, tels que l'objet fenêtre qui peut déplacer et redimensionner le navigateur, l'objet de localisation et l'objet historique qui peuvent être utilisés pour la navigation, et le navigateur qui peut obtenir le navigateur, en utilisant système et informations sur l'écran utilisateur. Avec l'objet screen, vous pouvez utiliser le document comme entrée pour accéder au document HTML, gérer l'objet frames du cadre, etc.

2.3 Moteur de traitement JavaScript

Le moteur de traitement JavaScript est un interpréteur qui peut analyser et exécuter du code JavaScript. Les navigateurs disposent généralement de moteurs JavaScript. Lorsque JavaScript est apparu pour la première fois, il s'exécutait dans le navigateur et était utilisé comme langage côté client.

Moteurs JavaScript courants :

(1) Chrome V8

(2) Firefox SpiderMonkey

(3) Microsoft Edge Chakra

Mentionnez que Node.js est basé sur le moteur Chrome V8. Comme mentionné ci-dessus, le moteur V8 est utilisé pour analyser et exécuter JS, et le V8 est implémenté sur la base de la norme ECMAScript. En d'autres termes, il n'y a pas d'opérations DOM et BOM dans Node.js. Il conserve uniquement le noyau de syntaxe (ES) de JavaScript et ajoute un modèle d'E/S non bloquant basé sur les événements pour le rendre léger et efficace. Node.js fonctionne en tant que service sur Windows, Linux et Mac, faisant passer le rôle de JavaScript du développement front-end au développement back-end.

La programmation ActionScript pour Flash, actuellement quelque peu obsolète, est également une implémentation spécifique d'ECMAScript.

Recommandations d'apprentissage gratuites associées : Tutoriel d'apprentissage Javascript

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer