JavaScript et JScript Quelle est la différence?

Netscape a développé la version originale de JavaScript pour la deuxième version de leur navigateur populaire. Initialement, Netscape 2 était le seul navigateur à prendre en charge un langage de script et ce langage s'appelait à l'origine LiveScript. Il fut bientôt renommé JavaScript. C'était dans le but de tirer profit de la publicité que le langage de programmation Java de Sun recevait à l'époque.

Bien que JavaScript et Java se ressemblent superficiellement, ce sont des langages complètement différents. Cette décision de nommage a causé de nombreux problèmes pour les débutants avec les deux langues qui les confondent continuellement. N'oubliez pas que JavaScript n'est pas Java (et vice versa) et vous éviterez beaucoup de confusion.

Microsoft tentait de capturer des parts de marché de Netscape au moment où Netscape a créé JavaScript et donc avec Internet Explorer 3, Microsoft a introduit deux langages de script. L'un d'eux s'appuyait sur Visual Basic et il a reçu le nom de VBscript. Le second était un sosie JavaScript que Microsoft a appelé JScript.

Afin d'essayer de surpasser Netscape, JScript avait un certain nombre de commandes et de fonctionnalités supplémentaires disponibles qui n'étaient pas en JavaScript. JScript avait également des interfaces avec la fonctionnalité ActiveX de Microsoft.

Masquage des anciens navigateurs

Étant donné que Netscape 1, Internet Explorer 2 et les autres premiers navigateurs ne comprenaient ni JavaScript ni JScript, il est devenu courant de placer tout le contenu du script dans un commentaire HTML afin de masquer le script des anciens navigateurs. Les nouveaux navigateurs, même s'ils ne pouvaient pas gérer les scripts, ont été conçus pour reconnaître les balises de script eux-mêmes.Par conséquent, masquer le script en le plaçant dans un commentaire n'était pas requis pour les navigateurs publiés après IE3..

Malheureusement, au moment où les navigateurs extrêmement anciens ont cessé d'être utilisés, les gens avaient oublié la raison du commentaire HTML et tant de personnes nouvelles à JavaScript incluent toujours ces balises désormais complètement inutiles. En fait, l'inclusion du commentaire HTML peut entraîner des problèmes avec les navigateurs modernes. Si vous utilisez XHTML au lieu de HTML, y compris le code dans un commentaire comme celui-ci aura pour effet de faire du script un commentaire plutôt qu'un script. De nombreux systèmes de gestion de contenu (CMS) modernes feront de même.

Développement du langage

Au fil du temps, JavaScript et JScript ont été étendus pour introduire de nouvelles commandes afin d'améliorer leur capacité à interagir avec les pages Web. Les deux langues ont ajouté de nouvelles fonctionnalités qui fonctionnaient différemment de la fonctionnalité correspondante (le cas échéant) dans l'autre langue.

Le fonctionnement des deux langues était suffisamment similaire pour qu'il soit possible d'utiliser la détection de navigateur pour déterminer si le navigateur était Netscape ou IE. Le code approprié pour ce navigateur pourrait alors être exécuté. Alors que l'équilibre se déplaçait vers IE pour gagner une part égale du marché des navigateurs avec Netscape, cette incompatibilité nécessitait une résolution.

La solution de Netscape a été de transférer le contrôle de JavaScript à l'Association européenne des fabricants d'ordinateurs (ECMA). L'Association a officialisé les normes JavaScript sous le nom ECMAscipt. Dans le même temps, le World Wide Web Consortium (W3C) a commencé à travailler sur un modèle d'objet de document (DOM) standard qui serait utilisé pour permettre à JavaScript et à d'autres langages de script un accès complet pour manipuler tout le contenu de la page au lieu du contenu limité. l'accès qu'il avait jusqu'à ce moment-là.

Avant que la norme DOM soit terminée, Netscape et Microsoft ont publié leurs propres versions. Netscape 4 est venu avec son propre DOM document.layer et Internet Explorer 4 est venu avec son propre DOM document.all. Ces deux modèles d'objet de document sont devenus obsolètes lorsque les gens ont cessé d'utiliser l'un de ces navigateurs, car tous les navigateurs ont depuis implémenté le DOM standard..

Normes

ECMAscript et l'introduction du DOM standard dans tous les navigateurs de la version cinq et plus récents ont supprimé la plupart des incompatibilités entre Javascript et JScript. Bien que ces deux langages aient encore leurs différences, il est maintenant possible d'écrire du code qui peut s'exécuter à la fois en JScript dans Internet Explorer et en JavaScript dans tous les autres navigateurs modernes avec très peu de détection de fonctionnalités nécessaires. La prise en charge de fonctionnalités spécifiques peut varier d'un navigateur à l'autre, mais nous pouvons tester ces différences en utilisant une fonctionnalité intégrée dans les deux langues dès le départ qui nous permet de tester si le navigateur prend en charge une fonctionnalité spécifique. En testant les fonctionnalités spécifiques que tous les navigateurs ne prennent pas en charge, nous serons en mesure de déterminer le code approprié à exécuter dans le navigateur actuel..

Différences

La plus grande différence entre JavaScript et JScript réside maintenant dans toutes les commandes supplémentaires prises en charge par JScript qui permettent d'accéder à ActiveX et à l'ordinateur local. Ces commandes sont destinées à être utilisées sur des sites intranet où vous connaissez la configuration de tous les ordinateurs et qu'ils exécutent tous Internet Explorer.

Il y a encore quelques domaines où JavaScript et JScript diffèrent dans les moyens qu'ils fournissent pour effectuer une tâche particulière. Sauf dans ces situations, les deux langages peuvent être considérés comme équivalents l'un à l'autre et ainsi, sauf indication contraire, toutes les références à JavaScript que vous voyez incluront généralement JScript.