JavaScript: incompatibilità

Le varie implementazioni di JavaScript, come già accaduto per l'HTML, spesso non sono conformi agli standard, ma piuttosto sono costruite per funzionare con uno specifico browser web. L'attuale standard ECMAScript dovrebbe essere teoricamente la base di tutte le implementazioni Javascript, ma in pratica i browser Mozilla (e Netscape) usano JavaScript, Microsoft Internet Explorer usa JScript, e altri browser come Opera e Safari usano altre implementazioni ECMAScript, spesso con ulteriori caratteristiche non standard per permettere la compatibilità con JavaScript e JScript.

JavaScript e JScript contengono molte caratteristiche che non sono parte dello standard ufficiale ECMAScript, e possono anche essere privi di diverse caratteristiche. In tal modo, sono in parte incompatibili, il che porta gli autori di script a sopperire a tali problemi. Tra i due, JavaScript è più conforme allo standard: ciò significa che uno script redatto secondo gli standard ECMA funzionerà con la maggior parte dei browser, tranne Internet Explorer.



Un altro effetto è che ciascun browser potrebbe trattare lo stesso script in modo diverso, e ciò che funziona in un browser potrebbe non funzionare in un altro browser, o persino in una diversa versione dello stesso browser. Come con l'HTML, è quindi raccomandabile scrivere codice conforme agli standard.

Il VBScript di Microsoft Internet Explorer non è JavaScript, ed è incompatibile con lo standard ECMA.


Fonte: Contributori di Wikipedia, 'JavaScript', Wikipedia, L'enciclopedia libera, 26 gennaio 2011, 05:30 UTC, it.wikipedia.org. Modifiche: indice 5. Testo pubblicato con licenza cc-by-sa.