= new Function ("return false") > explication SVP

= new Function ("return false") > explication SVP - HTML/CSS - Programmation

Marsh Posté le 04-05-2006 à 19:16:27    

slt,

Code :
  1. document.onselectstart=new Function ("return false" )


 
voila il est aisé de comprendre ce que produit ce code lorsqu'il est interpreté par le navigateur,
toutefois je n'en comprends pas le sens.
 
document.onselectart -> ok
mais la suite je ne comprends pas:  
 
on crée une instance d'objet?
a priori non puisque que le code ne comporte pas de constructeur,
genre:  fonction monObjet(param1, param2, ...) {this.param1 = truc ...}
 
 
Que signifie "Function" avec un "F" majuscule??
 
Peut etre que ça m'aiderait déja à comprendre ce que "return false" fiche entre parenthèse
 
merci par avance

Message cité 1 fois
Message édité par namerh le 04-05-2006 à 19:48:16
Reply

Marsh Posté le 04-05-2006 à 19:16:27   

Reply

Marsh Posté le 04-05-2006 à 19:50:49    

namerh a écrit :

Que signifie "Function" avec un "F" majuscule??


Ca signigifie que dalle :D
 
On aurait pu résumer ce truc louche en :

document.onselectstart = null


enfin je crois...

Reply

Marsh Posté le 04-05-2006 à 21:55:48    

non florent, ton code ne produit aucune action ;-)
 
j'ai une autre question:
 
code1:

Code :
  1. function retourneFaux()
  2. {
  3.  return false;
  4. }
  5. document.onselectstart = retourneFaux;

code2:

Code :
  1. document.onselectstart = false;


pourquoi le code2 n'est il pas équivalent au code1 ?? :ouch:
 


Message édité par namerh le 04-05-2006 à 21:56:11
Reply

Marsh Posté le 05-05-2006 à 01:24:20    

Ouuu, là y'a autre chose... Comme si "Fonction" était une classe dont le constructeur prendrait en paramètre une string, qui vaut ici "return false" [:le kneu] J'y pige que dalle là :D T'as un peu plus de code ? Ce qu'il y a autour ?


Message édité par FlorentG le 05-05-2006 à 01:24:33
Reply

Marsh Posté le 05-05-2006 à 09:19:36    

Citation :

pourquoi le code2 n'est il pas équivalent au code1 ??  :ouch:


 
Car retourneFaux est une fonction et false est une valeur booléenne.
 
Pour prendre une image, imaginez un jeu pour enfants où il faut mettre un cylindre, un cube et un prysme dans le trou qui a la même forme (rond, carré et triangle).
Essayer de remplacer le code 1 par le code 2, c'est comme essayer de mettre un cube dans le trou triangulaire ;p

Reply

Marsh Posté le 05-05-2006 à 09:37:52    

ça

Code :
  1. document.onselectstart=new Function ("return false" )


tu peux l'écrire

Code :
  1. document.onselectstart=function(event) {return false"; }

 
Perso je trouve que c'est beaucoup plus clair.
 
Par contre ta syntaxe, ça doit être issue de la bibliothèque prototype non? Me semble l'avoir vu la dedans!!!
Dans ce cas regarde la doc pour savoir ce que ça fait :o

Reply

Marsh Posté le 05-05-2006 à 18:51:11    

anapajari a écrit :

 ...
Par contre ta syntaxe, ça doit être issue de la bibliothèque prototype non? Me semble l'avoir vu la dedans!!!
Dans ce cas regarde la doc pour savoir ce que ça fait :o


non en fait j'ai trouvé ce code dans un script sur le net
(et pour répondre à FlorentG: il n'y a pas d'autre code autour)


Message édité par namerh le 05-05-2006 à 18:55:36
Reply

Marsh Posté le 05-05-2006 à 18:55:15    

Bidem a écrit :

Citation :

pourquoi le code2 n'est il pas équivalent au code1 ??  :ouch:


 
Car retourneFaux est une fonction et false est une valeur booléenne.
 
Pour prendre une image, imaginez un jeu pour enfants où il faut mettre un cylindre, un cube et un prysme dans le trou qui a la même forme (rond, carré et triangle).
Essayer de remplacer le code 1 par le code 2, c'est comme essayer de mettre un cube dans le trou triangulaire ;p


 
je ne comprends toujours pas.. certes c'est une fonction, mais une fonction qui retourne un booléen "false"..
 
c'est clair que je débute en développement web, et il y a des trucs qui doivent etre spécifiques:
 
en programmation C par exemple, si l'on affecte "une fonction" à une variable, ça revient à initialiser la variable avec la valeur retournée par la fonction!


Message édité par namerh le 05-05-2006 à 18:56:45
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed