JeuWeb - Crée ton jeu par navigateur
Comment interpréter le JS provenant d'Ajax ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Comment interpréter le JS provenant d'Ajax ? (/showthread.php?tid=4902)

Pages : 1 2


RE: Comment interpréter le JS provenant d'Ajax? - Sephi-Chan - 11-06-2010

(11-06-2010, 07:38 PM)jo_link_noir a écrit :
(11-06-2010, 11:02 AM)Sephi-Chan a écrit : Ensuite, tout ça se fait très facilement avec des librairies (et ne devrait pas être fait autrement à moins d'avoir une très solide maîtrise de Javascript pour écrire soit-même un parser fiable)

Écrire un parseur ? Je comprend pas pourquoi tu dis ça en fait :heuuu:

Et bien, il a du texte qui s'avère être du Javascript qu'il souhaite faire interpréter.

Si on regarde un peu le code source de jQuery, on peut voir qu'ils n'utilisent jamais eval() mais une méthode globalEval() :


// Evalulates a script in a global context
globalEval: function( data ) {
if ( data && rnotwhite.test(data) ) {
// Inspired by code by Andrea Giammarchi
// http:/webreflection.blogspot.com/2007/08/global-scope-evaluation-and-dom.html
var head = document.getElementsByTagName("head")[0] || document.documentElement,
script = document.createElement("script");

script.type = "text/javascript";

if ( jQuery.support.scriptEval ) {
script.appendChild( document.createTextNode( data ) );
} else {
script.text = data;
}

// Use insertBefore instead of appendChild to circumvent an IE6 bug.
// This arises when a base node is used (#2709).
head.insertBefore( script, head.firstChild );
head.removeChild( script );
}
}

Ces gourous du Javascript on fait ce choix. Ce n'est pas pour rien.


Sephi-Chan


RE: Comment interpréter le JS provenant d'Ajax ? - jo_link_noir - 12-06-2010

La façon de dire me fessais pensé à écrire un interpréteur java-script en java-script xD. d'où ma remarque...
En fait ça utilise juste celui du navigateur.

Bonne nuit Smile