33


Découvrir JSDB
Premiers pas ...
•Effectuez un double-clic sur l’icône de JSDB
•Tapez une commande à l’invite js>
•Pressez [Entrée] pour évaluer chaque commande
js>1+4
5
js>writeln("hello, world")
hello, world
Variable
•Assigner la valeur d’une variable à l’aide du signe =
•Le mot-clef var est optionel. var déclare une variable d’étendue locale.
•Séparez chaque ligne d’instruction avec un ;
•JavaScript est orienté object. Utilez l’opérateur typeof pour déterminer la nature des entités que vous manipulez. typeof est un operateur, pas une fonction!
js>var a = 100000;
js>var b = 2000;
js>a / b
50
js>typeof a
number
js>var c = "Hello";
js>typeof c
string
Structures
•Les tableaux sont notés avec des crochets []
•Les objets sont notés avec des accolades {}
writeln() affiche les valeurs, suivies par un retour chariot.
•Utilisez for ... in pour parcourir les indices d’un tableau.
js>me = {title: Shanti, home: California};
js>writeln(me.name)
Shanti
js>writeln(me.name," lives in ",me.home);
Shanti lives in California
js>f = [1,1,2,3,5,7,12,19];
js>for (var i in f) writeln(f[i])
1
1
2
...
Streams
Stream est une classe intégrée. [ndlr : La documentation originale utilise le terme "objet" et non "classe". Les objets sont obtenus à l’aide du contructeur new, il s’agit donc bien d’une classe. Cette confusion apparaît plusieurs fois et s’avère corrigée sans rappel à cette note.] Les objets Stream peuvent représenter des fichiers, des sockets, des pages Web, les ports séries (RS-232), des pipes et des blocs de mémoire allouées dynamiquement.
js>var s = new Stream('jsdbhelp.html')
jsdbhelp.html
js>s.readFile()
<head>
<title>JSDB Help</title> ...
js>quit
XML
xml.js est une bibliothèque JSDB standard. Consultez "Référence" pour en savoir plus sur cette classe.
load() et run() évaluent le code JavaScript sauvegardé dans un fichier. load() se limite au chargement du fichier source.
Stream est une classe intégrée.
•Les guillemets ( ' " ) sont interchangeables.
js>run('perfect.js')
...
js>load("xml.js")
js>x = readXML(new Stream('test.xml'));
js>items = x.find('item');
js>for (var i in items) writeln(items[i].cdata);
...
Ecrire des programmes
Créez un fichier .js à l’aide de votre éditeur de texte favori. Exécutez avec l’une ou l’autre des commandes ci-après. L’argument –load permet de spécifier l’inclusion préalable de la bibliothèque indiquée (xml.js).
jsdb.exe program.js
jsdb.exe -load xml.js program.js
Réaliser un programme JSDB autonome
c:\temp>pkzip program.zip main.js
c:\temp>copy /b jsdb.exe+file.zip program.exe c:\temp>program.exe
Mise au point des programmes
Deux débogueur interractifs sont disponibles : debugconsole.js et debug.js.
c:\temp>jsdb debug.js localhost:8832 c:\temp>jsdb.exe -debug localhost:8832 myprogram.js
Ou de façon plus pratique
c:\temp>jsdb debug.js myprogram.js