Articles taggés avec 'Javascript'


Logiciel Net

C'est arrivé pour allumer le téléviseur Net TV, comme cela s'était passé pour devenir une radio Radio Net, sans parler de la musique! Maintenant, comme mentionné dans d'autres postes, c'est officiel pour le logiciel de transformer à court terme Logiciel Net!

Adobe , dont nous savons a récemment acquis Macromedia, formalise les applications Web - Web 2.0 - en temps réel RIA (Rich Internet Applications) avec l'annonce de vouloir prendre sur le populaire logiciel Photoshop d'édition Web. Il est le dernier « un accord entre Adobe   et Photobucket   de mettre à disposition en ligne d'une technologie pour l'édition vidéo et remix. Merci à la nouvelle technologie développée pour Flash 9 avec ActionScript 3.0 , Adobe vise haut, prévoyant que dans les six mois sera disponible la version en ligne de Photoshop précisément fondée sur la technologie Flash.

En effet, les nouvelles possibilités d' ActionScript 3.0 (impliquant des projets tels que Flex et Apollo - voir aussi Web2.0: Adobe tente d'Apollon et d' application Ajax Rich Internet ) en fait le candidat idéal pour la mise en œuvre de vrai sur la RIA Web Ajax , d'autre part, nous voyons évincé de son trône dans ce nouveau scénario. Malgré les innombrables cadre Ajax, quelques excellents, produites au cours des dernières années, Flash fournit un environnement le plus avancé et facile à manipuler. Aussi nous parler de l'un des plugins les plus populaires au monde: Flash il a derrière un peu plus âgés que l'Ajax et dérivés.

Par ailleurs, il est évident que l'Adobe Flash choisit, il est le producteur maintenant. Cependant, il ya des problèmes techniques qui peuvent être considérées - à ce jour - uniquement être résolue dans une application harmonieuse des technologies telles que Flash. Jeter un oeil à la nouvelle ActionScript 3.0 , nous avons immédiatement réaliser les énormes possibilités de développement offertes par cette nouvelle plateforme. La langue norme ECMA et de nouveaux objets mis à disposition par le cadre vous permettent d'atteindre un niveau de détail possible avec les versions précédentes de Flash: de tous, par exemple, la capacité d'accéder aux données à partir d'un bitmap image téléchargée dur!

L'attaque par Adobe semble avoir lieu sur deux fronts afin distincts qu'ils ont en commun la technologie Flash (qui a toujours été rappelez la capacité à interagir activement avec le navigateur, puis avec le côté client de JavaScript et de scripts côté serveur).

La première attaque a lieu en dehors, du côté du navigateur, où la technologie Apollo est vraiment proposé comme une alternative au noyau habituel des différentes plates-formes, disponible dès aujourd'hui (Windows, Mac OS, Linux, etc ...); utiliser Adobe Apollo , puis, au lieu navigateur pour de meilleures performances et des applications RIA (réel) impensable, contournant ainsi l'incompatibilité entre Internet Explorer, FireFox et la camaraderie. En outre, Apollo offre une plateforme de développement unique, JavaScript comme l'Ajax, mais sans problèmes de compatibilité. Ce dernier point est un revers important aux technologies comme Ajax, qui souffrent encore énormément de questions sur la compatibilité du navigateur, ne pas oublier, par ailleurs, fait toute la question (rendu) graphiques CSS!

L'autre attaque est de l'intérieur, frappant Ajax Framework avec carte Flash. L'élément gagnant dans cette stratégie réside dans l'utilisation de Flash, la technologie Flash, qui est applicable aussi bien dans Flex , aussi bien dans Apollo , à la fois comme une version autonome sont déjà habitués à voir (simple fichier SWF, par exemple)! Il ne fait aucun doute que ce scénario est extrêmement attrayant pour les développeurs et web. Que devient immédiatement réalisables flash réutilisables de diverses manières, sans me forcer à changer une seule ligne de code et, d'ailleurs, sans se soucier de la compatibilité!

Ceci, à mon avis, est une étape importante vers l'avant, un changement des proportions considérables, ce qui implique également le monde des jeux et du marketing. Nous en reparlerons bientôt, ne vous méprenez pas!

Suite ...

Amiga Emulator Web

Amiga Screen Shot Pour tous les nostalgiques comme moi un beau moteur JavaScript pour l'émulation de l'Amiga , l'émulation extraordinaire si vous pensez que c'est entièrement fait par un script JavaScript.

Dommage ne ​​fonctionne qu'avec Firefox, mais essayez d'utiliser également Internet Explorer 7 et voir ce qui arrive ... ;)

L'émulation est pratiquement achevée (à droite image agrandie) et comprend également un Shell.

Suite ...

Web2.0: Adobe tente d'Apollon?

Apollo est le nom de code (pour l'instant) d'un projet ambitieux dans le monde pour Adobe RIA (Rich Internet Applications) et du Web 2.0, notamment Ajax. Quelqu'un se souvient de Macromedia Contribute, Macromedia Central à quelqu'un d'autre. Il ya, aussi, qui voit dans Apollo simple union - ou la possibilité - de rassembler des éléments de Flash et PDF (quelque chose qui a déjà été possible avec Flash Paper)!

Suite ...

Dynamique Javascript et CSS Fichiers

Dans Message Créer un lecteur RSS en PHP et Javascript indirectement, nous avons rencontré une technique très intéressante qui a permis de créer - en pratique - à partir d'un fichier PHP JavaScript.

Suite ...

Snap: liens prévisualisation en temps réel

Aligner est l'un de ces services Web2.0 style extraordinaire qui ne sont plus offerts sur le réseau afin totalement gratuit. Son non-fonctionnement est simple, il suffit d'entrer le "habituelle" des scripts JavaScript sur votre web, blog ou autre chose ... et que des Incon tous vos liens ont maintenant un bel aperçu en temps réel.
Pour le tester j'ai mis ici sur undolog.com, essayez de planer au-dessus . Cool!

Suite ...

Créer un lecteur RSS en PHP et Javascript

Alors que nous sommes sur un blog (weblog) et l'échange de fichiers RSS est devenu la norme, voici quelques extraits de code simple et utile pour manipuler les aliments-RSS.
Nous savons tous que les fichiers RSS sont - à la fin - de simples fichiers texte conforme à la norme XML. Il s'ensuit que les manipuler n'est pas si complexe.

La première classe, nous présentons, en PHP, vous pouvez "lire" un fichier RSS à partir de n'importe quelle adresse, vous permettant de traiter le résultat et de le prendre n'importe où.

Suite ...

Comment mettre Google Maps dans votre site Web

Le Web 2.0 signifie également des logiciels distribués via les API (application programming interface). La possibilité d'utiliser les caractéristiques et les fonctionnalités à distance est extrêmement utile ailleurs dans la réalité comme l'Internet. En plus de Yahoo, avec son style Toolkit 2.0, Google - dans le contexte de géo-référencement - offre à ses outils gratuits, dans ce cas pour la manipulation et la gestion des cartes.

API Google Maps vous permet d'insérer Google Maps dans leurs pages web en utilisant JavaScript.

Suite ...

Application Ajax Rich Internet?

Question: les applications Ajax peut être considéré comme une vraie RIA embrasse tout (Rich Internet Application - RIA est une application web avec toutes les caractéristiques et les fonctionnalités d'une application de bureau classique pour PC)?
Selon Ryan Stewart, pas - ou du moins pas maintenant.

Le rôle du bureau dans des applications Internet riches par ZDNet l 'Ryan Stewart - Rich Internet Applications ont contribué à changer la face du web. C'est plus interactif, les concepteurs ont pu laisser leur marque et l'innovation dans le développement web a explosé. Rich Internet Applications permis d'ouvrir le Web pour améliorer l'expérience et maintenant ils font la même chose pour les applications bureautiques. Où dois-RIA s'insérer dans le monde du développement de bureau?

En fait, la concurrence avec d'autres «approches» - pour ainsi dire - est très élevé. L'explosion récente de Net TV, par exemple, montre que l'union fait la force. Dans «Ajax», vous ne pouvez pas voir une vidéo, pour une chose. Comment vous pouvez faire beaucoup d'autres choses. Je ne pense pas l'Ajax sera l'avenir absolu. Je vois plus que toute autre chose dans l'extension de navigateur Ajax et une nouvelle façon d'aborder certaines des dynamiques liées à l'UE avant même envisagé.

Cependant, si quelqu'un l'avait remarqué, il ya encore des obstacles à surmonter. Par exemple:

  • Améliorer la compatibilité entre les différents navigateurs sur le marché, un sujet largement discuté sur ce blog très
  • Autoriser une plus grande interaction entre les pages Web et le système d'exploitation "hôte", comme un glisser-déposer depuis le bureau vers la page Web
  • Normalisation des scripts: JScript, JavaScript (1,3, 1,7, ...), VBScript
  • Accessibilité, convivialité et sécurité, étant donné que nous sommes sur le net!

Bibliothèques, Prototype / Script.aculo.us et composants YUI: la vraie pierre d'achoppement?

Quand un développeur crée une bibliothèque ou un cadre de travail pour fixer (une fois pour toutes) une variété de besoins, commencez par créer un monstre. Souvent ne le réalisent pas, mais le lien de l'utilisateur final développeur est vraiment tordu. Il commence, par exemple, avec la création d'une bibliothèque JavaScript qui permet de créer des fenêtres simples. Juste un peu et quelqu'un crée une bibliothèque similaire qui vous permet de créer modale redimensionnable et fenêtres qui se chevauchent avec la gestion des commandes. Après un certain temps, il vient et vous met en œuvre également des graphiques personnalisés ... et ainsi de suite.

Fondamentalement quand vous obtenez quelque chose, immédiatement après l'instant où quelque chose semble ne suffit pas, semble être la norme et ensuite chercher de nouveaux accessoires pour améliorer encore plus les performances ou l'apparence. Toutes les demandes de l'utilisateur final! Et le développeur fonctionne presque comme un chien intimidé; l'utilisateur final a toujours raison!

Cette course se poursuit, dans un univers comme celui de l'Internet, est susceptible d'apporter plus de confusion à long fonte qu'autre chose.

Web 3.0?

Dernièrement, les expériences (beta) ont proliféré dans le Web2.0 sur le réseau à un rythme impressionnant. Chacun a porté à l'attention de son application Ajax-style, chacun avec ses solutions intégrées, en s'appuyant sur des notes de bibliothèques, écrit-cadres propriétaires, etc ...
Chaque expérience a ses particularités: certaines était visuellement attrayant, certains extrêmement rapide, extrêmement personnalisable, et d'autres d'autres très utilisable.
Mais personne, jusqu'à présent, a réussi à combiner tout cela dans un seul environnement.

Attention le raisonnement, il est clair que la raison est le faible soutien fourni par le navigateur lui-même et l'immense complexité du problème.

Même si quelqu'un a assimilé le navigateur pour un système d'exploitation, il détient toujours un énorme avantage. Au premier rang de ceux-ci est le noyau dits. Quel est le noyau ou l'explorateur Firefox? Les deux, comme Opera ou Safari, à peine soutenir le langage de script appelé (JavaScript ou JScript selon le cas). Mozilla Firefox est sur le point de publier sa version de JavaScript 1.7, vraiment intéressant. Mais sera Explorer de Microsoft? Il va installer un ActiveX l'imiter, attendre jusqu'en 2012 pour la sortie de IE8 ou utiliser une myriade de if pour comprendre ce que la plate-forme vous travaillez?

Je ne peux qu'être d'accord avec Ryan Stewart. Pour l'instant, l'Ajax est une technique d'une aide considérable dans des cas très spécifiques, mais de comparer cette technique (et je la technique du stress n'est pas la technologie) pour une RIA me semble - du moins pour l'instant - très excessif.

Macromedia / Adobe

Intéressant, cependant, sont les technologies (et les technologies de stress I et non technique) Flex / Flash et d'Apollon, après l'acquisition de Macromedia par Adobe vivent une deuxième jeunesse.
Je recommande fortement à toutes les parties intéressées de consulter les Adobe Labs , où il montre une belle nouvelle politique qui inspire certainement plus confiance en l'avenir de la Script.aculo.us - aucune infraction, et sans nuire à l'développeur.

Mais l'Internet a une caractéristique unique, celui de la surprise, donc je ne suis pas surpris de tout ce qu'il disait - courte - une myriade de bêtises!

Suite ...

JavaScript Object (Partie I)

Si vous avez besoin d'instancier plusieurs objets d'une classe, une méthode consiste à définir la classe à travers la pseudo-constructeur function() .

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/ / Définition de classe
param1 , param2 ) { Fonction CMyClass (param1, param2) {
= param1 ; ce myProperty = param1.;
= param1 + param2 ; ce param1 + param2 = myAdding.;
/ /
= function ( param1 ) { présente. myMethod = function (param1) {
"add: " + this . myAdding + " - Param: " + param1 ) ; alert ("ajouter:" + cette + myAdding "- param:". param1 +);
}
}
/ /
new CmyClass ( 10 , 20 ) ; var obj1 = new CMyClass (10, 20);
new CmyClass ( 20 , 40 ) ; var obj2 = new CMyClass (20, 40);
/ /
"Hi from obj1" ) ; . obj1 maMethode ("Salut d'obj1");
/ /
"Hi from obj2" ) ; . obj2 maMethode ("Salut d'obj2");

Définie la classe - avec beaucoup de paramètres initiaux - n Je peux créer des instances de mon objet, lors de la création personnalisant avec le mot clé new .
Je peux aussi insérer un appel à une méthode lors de l'initialisation de l'objet, en faisant attention à insérer uniquement la dernière - voir la ligne 14:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/ / Définition de classe
param1 , param2 ) { Fonction CMyClass (param1, param2) {
= param1 ; ce myProperty = param1.;
= param1 + param2 ; ce param1 + param2 = myAdding.;
/ /
= function ( param1 ) { présente. myMethod = function (param1) {
"Result: " + this . myResult ) ; alert ("Résultat:". + ce myResult);
}
/ /
function ( ) { ce _init. = function () {
= this . myProperty * 100 ; ce myResult = ce myProperty * 100..;
}

; ce _init ().;

}
/ /
new CmyClass ( 10 , 20 ) ; var obj1 = new CMyClass (10, 20);
new CmyClass ( 20 , 40 ) ; var obj2 = new CMyClass (20, 40);
/ /
"Hi from obj1" ) ; . obj1 maMethode ("Salut d'obj1");
/ /
"Hi from obj2" ) ; . obj2 maMethode ("Salut d'obj2");

Une façon serait faux - voir la ligne 6:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/ / Définition de classe
param1 , param2 ) { Fonction CMyClass (param1, param2) {
= param1 ; ce myProperty = param1.;
= param1 + param2 ; ce param1 + param2 = myAdding.;

; ce _init ().;

/ /
= function ( param1 ) { présente. myMethod = function (param1) {
"Result: " + this . myResult ) ; alert ("Résultat:". + ce myResult);
}
/ /
function ( ) { ce _init. = function () {
= this . myProperty * 100 ; ce myResult = ce myProperty * 100..;
}


}
/ /
new CmyClass ( 10 , 20 ) ; var obj1 = new CMyClass (10, 20);
new CmyClass ( 20 , 40 ) ; var obj2 = new CMyClass (20, 40);
/ /
"Hi from obj1" ) ; . obj1 maMethode ("Salut d'obj1");
/ /
"Hi from obj2" ) ; . obj2 maMethode ("Salut d'obj2");

Une autre façon de créer un objet à la volée (à la volée) est de déclarer une variable / fonction, à usage unique:

1
2
3
4
5
6
7
8
9
{ monObjet = {var
, myProperty: 10,

( ) { myMethod: function () {
"Hi from " + this . myProperty ) ; alert ("Salut de" + cette myProperty.);
}
};

; . monObjet maMethode ();

Cette technique est utile lorsque vous voulez créer un istranza unique d'un objet, et le traiter comme tel. Ceci est souvent utilisé dans les frameworks Ajax récents comme Prototype et dérivés. De ce fait, il n'est pas possible d'instancier un nouvel objet, puisque la classe a été perdu.

Vous pouvez ensuite utiliser le prototype d'étendre l'utilisation d'une classe, même vide. Par exemple:

1
2
3
4
5
6
7
8
9
10
11
12
13
Fonction CMyClass () {}

{ CMyClass. Prototype = {
, myProperty: 10,

( ) { myMethod: function () {
"Hi from " + this . myProperty ) ; alert ("Salut de" + cette myProperty.);
}
}

new CmyClass ( ) ; var obj = CMyClass new ();

; obj maMethode ().;

Ou encore:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Fonction CMyClass () {
= 1000 ; ce myOldProperty = 1000.
}

{ CMyClass. Prototype = {
, myProperty: 10,

( ) { myMethod: function () {
"Hi from " + this . myProperty ) ; alert ("Salut de" + cette myProperty.);
"Hi from " + this . myOldProperty ) ; alert ("Salut de" + cette myOldProperty.);
}
}

new CmyClass ( ) ; var obj = CMyClass new ();

; obj maMethode ().;

Suite ...

Conseils fou est Microsoft JScript vs JavaScript (partie 1)

Microsoft aujourd'hui nous avons vraiment s'attendre à tout, surtout quand il s'agit de navigateurs. Offenser la communauté du renseignement, cependant, est un peu «laid à accepter.
Sur le blog IE7 a été publié aujourd'hui, un article ( IE + Performance JScript Recommandations Partie 3: L'inefficacité du code JavaScript ), si on peut appeler Peter Gourevitch, PM performance pour IE, avec la partie III de son «conseil» pour les développeurs.

Première note: parce que Microsoft insiste sur la mise en œuvre de sa propre version de JavaScript - qu'ils appelaient JScript - complique la vie de chacun?

Deuxième fait: parce que le moteur JScript est la propriété de Microsoft, au lieu de perdre du temps à raconter "notre" manière de contourner les défauts, pourquoi ne pas les régler une fois pour toutes?

Laissant de côté la première suggestion de la présente partie, III, qui peut être lu directement sur ​​le blog ou sur Ajaxian , le second est très frappant, et sincèrement ne diregisco propres.

Ne pas utiliser des fonctions accesseurs de propriété

Quand vous dites le progrès! Juste en 2007, un gestionnaire de projet, Microsoft nous dit les développeurs ne pas utiliser les fonctions getter et setter dans JScript!
La folie, bien sûr, est un mal étrange qui affecte si soudaine et trompeuse. JScript - style JavaScript - est mis en œuvre suivant un modèle d'objet! C'est un langage orienté objet, dans le sillage de la C + +. Le fait que les variables sont accessibles depuis l'extérieur (comme indiqué dans l'article - par la manière évidente) n'est absolument pas une fanfaronnade, en effet. La technique d'encapsulation est sa philosophie de la programmation orientée objet. Encapsuler les propriétés, passant de presque obtenir et définir la méthode est une force de langage orienté objet, pas une limite. Recommandons de ne pas les utiliser n'est rien moins que criminel, et les problèmes de performances doivent être pris en charge par l'interprète et ses auteurs, et non pas la fin-développeur.
Donc à la fin, JScript est utilisé comme un simple C, malheur à traiter comme C + +, sinon "écrasé" le navigateur ou autre.

En outre, comme indiqué sur le blog, tout est un faux problème, car JScript ne prend pas en œuvre les fonctions réelles get et set, seulement JavaScript ne!

Mais le problème, bien sûr, demeure. En JavaScript (JScript désolé mais je ne peux pas le digérer), il existe différentes techniques pour créer un objet. Par exemple, vous pouvez créer à la volée comme ceci:

1
2
3
4
5
{ monObjet = {var
, miaProprieta: 0,

( ) { alert ( "Hello" ) ; } mioMethodo: function () {alert ("Bonjour");}
};

De cette façon, je n'ai pas déclaré une classe. L'objet est déclaré et créé, pour ainsi dire simultanément. Il est un moyen rapide quand l'objet nous avons besoin est unique.

Ou, ce qui équivaut à toutes fins pratiques:

1
2
3
4
5
6
7
8
Fonction CMyObject () {
= 0 ; ce miaProprieta = 0.;

= function ( ) { alert ( "Hello" ) } cette fonction. myMethod = () {alert ("Bonjour")}

}
/ /
new CmyObject ( ) ; var iMyObject CMyObject = new ();

) e poi si crea esplicitamente l'oggetto con new . Dans ce cas, nous définissons d'abord la classe - en utilisant une function - ( CmyObject ) et ensuite créer explicitement l'objet avec new .

Outre les questions relatives à la stylistique développeur individuel, le problème de savoir comment accéder aux propriétés d'une classe reste. Je recommande fortement à tous les intéressés, comumque, lire les réponses sur le blog de Microsoft, vraiment intéressant.

Sur les blogs ont trois modes d'accès: avec des fonctions get et set, direct et le déplacement à partir du prototype. Finalement, la belle chose, c'est que sur le blog il ya un code pour effectuer un essai routier, un test des trois méthodes mentionnées ci-dessus. Le code est présent sur le blog mais je le reproduis ici pour être complet:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<Script>
/ / Définition voiture lente
Fonction SlowCar ()
{
= 17 ; ce m_tireSize = 17.;
= 250 ; // One can always dream! présente. m_maxSpeed ​​= 250, / / On peut toujours rêver!
= SlowCar_get_tireSize ; ce GetTireSize = SlowCar_get_tireSize.;
= SlowCar_put_tireSize ; ce SetTireSize = SlowCar_put_tireSize.;
}
Fonction SlowCar_get_tireSize ()
{
; retourner ce m_tireSize.;
}
value ) Fonction SlowCar_put_tireSize (valeur)
{
= value ; ce m_tireSize = valeur.;
}
</ Script>


<Script>
/ / Voiture plus rapide, accesseurs de propriété n'est plus
Fonction FasterCar ()
{
= 17 ; ce m_tireSize = 17.;
= 250 ; // One can always dream! présente. m_maxSpeed ​​= 250, / / On peut toujours rêver!
}
</ Script>


<Script>
/ Voiture / Prototype, utilisez les fonctionnalités de langage!
Fonction PrototypeCar ()
{
= 17 ; ce m_tireSize = 17.;
= 250 ; // One can always dream! présente. m_maxSpeed ​​= 250, / / On peut toujours rêver!
}

= function ( ) { return this . m_tireSize ; } ; . PrototypeCar Prototype GetTireSize = function () {return cette M_tireSize;.}.;
= function ( value ) { this . m_tireSize = value ; } ; .. PrototypeCar Prototype SetTireSize = function (value) {this M_tireSize = valeur;.};
</ Script>


<Script>
Fonction testdrive ()
{
new SlowCar ( ) ; // Safe and reliable, probably not fast var = new slowCar SlowCar () / / Sûr et fiable, rapide Probablement pas
new FasterCar ( ) ; // Lacks air-bags, probably faster var = new fasterCar FasterCar () / / manque d'air-bags, probablement plus rapide
new PrototypeCar ( ) ; // Can technology win the day? var = new PrototypeCar protocole () / / La technologie peut l'emporter?


( new Date ( ) ) . getTime ( ) ; var start = (new Date ()) getTime ().;
var i = 0 ; i < 100000 ; i ++ ) { slowCar. SetTireSize ( slowCar. GetTireSize ( ) + 1 ) ; } for (var i = 0; i <100000; i + +) {slowCar SetTireSize (slowCar. GetTireSize () + 1);.}
( new Date ( ) ) . getTime ( ) ; var = fin (new Date ()) getTime ().;
"Slow Car " + ( end - start ) + "<br>" ; . Sortie innerHTML + = "voiture lente" + (fin - début) + "<br>";


new Date ( ) ) . getTime ( ) ; start = (new Date ()) getTime ().;
var i = 0 ; i < 100000 ; i ++ ) { fasterCar. m_tireSize += 1 ; } for (var i = 0; i <100000; i + +) {fasterCar m_tireSize + = 1;.}
new Date ( ) ) . getTime ( ) ; fin = (new Date ()) getTime ().;
"Faster Car " + ( end - start ) + "<br>" ; . Sortie innerHTML + = "voiture plus rapide" + (fin - début) + "<br>";


new Date ( ) ) . getTime ( ) ; start = (new Date ()) getTime ().;
var i = 0 ; i < 100000 ; i ++ ) { protoCar. SetTireSize ( protoCar. GetTireSize ( ) + 1 ) ; } for (var i = 0; i <100000; i + +) {protocole SetTireSize (protoCar. GetTireSize () + 1);.}
new Date ( ) ) . getTime ( ) ; fin = (new Date ()) getTime ().;
"Prototype Car " + ( end - start ) + "<br>" ; . Sortie innerHTML + = "prototype de voiture" + (fin - début) + "<br>";
}
</ Script>

"TestDrive();" > Test Drive Cars !</ button > <Button Onclick = "Testdrive ();"> Voitures Test Drive </ button>
"output" ></ div > <div Id = "output"> </ div>

Maintenant, c'est la sortie (sur ma machine) avec IE7:
Voiture lente 515
63 voiture plus rapide
547 prototype de voiture

Avec Firefox (v.2.0.0.1):
Voiture lente 156
47 voiture plus rapide
172 prototype de voiture

Avec Opera (v.9.10):
Voiture lente 172
47 voiture plus rapide
172 prototype de voiture

En bref :) IE7 sort vraiment mal ... Je ne sais pas si vous remarquez l'énorme différence. Donc je dirais que JScript pourrait être abolie, éliminés, effacés, vaporisé. Nous espérons que Microsoft décide de prendre elle aussi javscript et les substituts.

Suite ...