
FAQ JavaScriptConsultez toutes les FAQ
Nombre d'auteurs : 41, nombre de questions : 174, dernière mise à jour : 30 avril 2013
Sommaire→Introduction- Qu'est-ce que le JavaScript ?
- Quel rapport entre JavaScript et ECMAScript ?
- Quelle relations entre JavaScript et le DOM ?
- A quoi sert le JavaScript ?
- JAVA ou JavaScript ?
- A quoi ressemble un code JavaScript ?
- Comment appeler un objet dans une page ?
- Comment faire si JavaScript est désactivé chez le client ?
JavaScript (ne pas confondre avec Java) est un
langage interprété à objet orienté prototype.
Il est principalement utilisé sur le Web côté client. C'est-à-dire que c'est le
navigateur qui exécute le code. Au contraire des langages de requêtes du style
PHP ou ASP qui eux sont exécutés côté serveur :
le code que le serveur renvoie au navigateur n'est que du (X)HTML
simple. Par conséquent, le JavaScript est utile pour tout ce qui
concerne les interactions du client sur la page Web. Il permet ainsi d'améliorer
la présentation et l'interactivité des pages Web.
Mais il peut aussi être utilisé côté serveur. Il existe plusieurs déclinaisons
du langage qui permettent de l'utiliser dans de nombreux domaines.
Lien : A quoi sert le JavaScript ?
JavaScript est ECMAScript ou presque.
Un peu d'histoire ne fait pas de mal : Brendan Eich développe initialement un langage de script côté serveur, appelé LiveScript, pour le compte Mosaic Communications Corporation.
Le National Center for Supercomputing Applications propriétaire du nom Mosaic force Mosaic Communications Corporation à changer de nom. Ainsi naîtra Netscape. À cette époque Netscape et SUN collaborent pour porter LiveScript sur le navigateur. Ainsi sort en 1995 une nouvelle version du langage, la première à être largement diffusée qui est alors baptisé JavaScript.
Netscape soumet son langage à Ecma International pour en faire un standard. Des premières drafts du standard, Microsoft sort JScript. Adobe s'en empare et crée ActionScript. Le Standard se nomme ECMAScript. Il traite du langage en lui-même.
JavaScript, comme toutes les déclinaisons nées avant le standard, ont été depuis révisées pour s'y conformer. JavaScript est donc une implémentation de ECMAScript .
JavaScript, dans son implémentation dans un navigateur, permet d'accéder aux éléments de celui-ci. Mais aussi et surtout au contenu d'une page (X)HTML.
Pour cela, un ensemble de méthodes et d'objets sont intégrés au langage. La norme régissant cette relation est gérée par le W3C. Elle fait partie de l'ensemble de normes régissant le DOM.
- Dans le navigateur, JavaScript est très utilisé pour traiter les événements occasionnés par un internaute sur une page Web, ainsi que pour faire des contrôles sur les formulaires. De plus en plus, on l'utilise pour créer ou modifier l'interface utilisateur d'une page.
- Sur un serveur Web, il permet d'interagir avec les composants du serveur comme les fichiers, les sockets, les bases de données.
- Sur un système d'exploitation, il peut être utilisé comme Shell, ou encore pour automatiser certaines tâches d'administration. C'est, entre autres, le cas sous Windows avec l'utilisation de WindowsHostScript.
- Dans un lecteur SVG, il permet de gérer des animations. De même, ActionScript©, la déclinaison d'Adobe permet d'interagir avec Flash.
Le JAVA et le JavaScript sont deux langages totalement différents :
- le JAVA est un langage beaucoup plus complexe que JavaScript (notions d'objet, de classes, d'héritage, de threads, et encore, vous n'avez rien vu....) ;
- le code source du JAVA est compilé avant son exécution ce qui assure notamment la confidentialité du code source (on n'accède pas au code en faisant clic droit > Afficher la source !!!) ;
- le JAVA est de loin plus performant que le JavaScript. En JAVA, on peut "quasi" tout faire. Cependant, le JavaScript évolue constamment. Le noyau est mis à jour avec de nouvelles fonctionnalités et les Frameworks JavaScript ajoutent chacun leur panel de méthodes en tout genre ;
- le JAVA est plus compliqué à mettre en place (besoin d'une machine virtuelle, d'un compilateur...) que le JavaScript. Pour faire du JavaScript, il suffit d'un éditeur et d'un navigateur...
<script type='text/javascript'>
...................................
...................................
</script>
Ce code se place généralement dans les balises <head> d'une page HTML, mais on peut le mettre presque partout.
En ce qui concerne la syntaxe, elle est très proche du C ou du PHP.
Pour appeler un objet, il y a plusieurs solutions.
Prenons un exemple :
<form name="exemple">
<table border="0" summary="">
<tr>
<td>coucou</td>
<td><img name="name_test" id="test" /></td>
</tr>
<tr>
<td> <input type="button" name="bouton_changer" id="changer" value="Changer" /></td>
<td></td>
</tr>
</table>
</form>
Nous allons donc appeler l'image présente dans la première ligne, deuxième colonne.
1. document.getElementById('test'). propriété ou méthode
2. document.exemple.name_test. propriété ou méthode
3. document.forms['exemple'].elements['name_test']. propriété ou méthode
Ces trois solutions sont les trois solutions les plus utilisées.
La première solution est la solution normalisée, qui doit donc être préconisée.
IE 6 et inférieurs ne font pas la différence entre l'attribut name
et l'attribut id. Par conséquent, si vous utilisez la fonction getElementById,
n'oubliez pas l'attribut id. Les versions supérieures et les autres navigateurs
n'ont pas ce problème.
De plus, IE 9 ne distingue pas les attributs id et name
en mode Quircks (pas de doctype dans le document).
Lien : Informations sur le doctype
On considère actuellement que le pourcentage d'internautes qui n'ont pas JavaScript activé dans leur navigateur est de plus en plus faible. Pour prévenir ces utilisateurs, vous pouvez utiliser les balises HTML :
Lien : PHP : Comment détecter si JavaScript est activé ou non?



