Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.javascript > #3026 > unrolled thread

Réflexion en Javascript : PropertyValue

Started byGloops <gloops@zailes.invalid.org.invalid>
First post2016-08-05 21:16 +0200
Last post2016-08-08 13:22 +0200
Articles 19 — 2 participants

Back to article view | Back to fr.comp.lang.javascript


Contents

  Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-05 21:16 +0200
    Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-08 00:57 +0200
      Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 03:21 +0200
        Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 03:36 +0200
          Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-08 12:04 +0200
            Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 13:03 +0200
              Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-09 00:35 +0200
          Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-08 12:04 +0200
            Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 13:04 +0200
      Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 10:04 +0200
        Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 10:26 +0200
        Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-08 12:14 +0200
          Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 13:13 +0200
            Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-09 00:23 +0200
              Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-09 02:58 +0200
                Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-09 14:11 +0200
                  Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-09 15:52 +0200
            Re: Réflexion en Javascript : PropertyValue SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-08-09 00:24 +0200
      Re: Réflexion en Javascript : PropertyValue Gloops <gloops@zailes.invalid.org.invalid> - 2016-08-08 13:22 +0200

#3026 — Réflexion en Javascript : PropertyValue

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-05 21:16 +0200
SubjectRéflexion en Javascript : PropertyValue
Message-ID<no2onb$6nk$1@usenet.pasdenom.info>
Bonjour tout le monde,

J'ai vu sur

http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm

qu'on pouvait parcourir, par exemple, les propriétés du navigateur ainsi :

             for (aProperty in navigator) {
                document.write(aProperty);
                document.write("<br />");
             }

et ça affiche bravement les noms des propriétés du navigateur.

Alors du coup, je me pose la question de comment on peut terminer ce 
travail ?

J'ai essayé avec navigator.getPropertyValue(aProperty), mais ça ne se 
contente pas de ne pas me retourner la valeur de la propriété, ça plante 
la boucle. L'exécution du script se poursuit après la boucle.

Si j'en crois d'autres docs, getPropertyValue peut être une bonne idée 
avec d'autres objets, mais pas avec navigator.

Ma première tentative avait été aProperty.value, avec et sans V 
majuscule : c'est moins catastrophique puisque toute la boucle 
s'exécute, mais il m'annonce toutes les propriétés avec valeur 
undefined, ce sur quoi j'ai un gros doute.

Meilleure idée ?

[toc] | [next] | [standalone]


#3029

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-08 00:57 +0200
Message-ID<57a7bcec$0$19763$426a74cc@news.free.fr>
In reply to#3026
Le 05/08/16 à 21:16, Gloops a écrit :
> Bonjour tout le monde,
>
> J'ai vu sur
>
> http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm

Ha! Merdum ! C'est de l'anglishe (ou de l'amerlock ?)

> qu'on pouvait parcourir, par exemple, les propriétés du navigateur ainsi :
>
>             for (aProperty in navigator) {
>                document.write(aProperty);
>                document.write("<br />");
>             }
>
> et ça affiche bravement les noms des propriétés du navigateur.
>
> Alors du coup, je me pose la question de comment on peut terminer ce
> travail ?

"terminer" ? "travail" ?

Le terminé de document.write()
c'est document.close();

Le commencé de document.write()
c'est document.open();

à défaut de fermer l'écriture, normalement le navigateur et au moins 
Firefox a sa roue (ou jauge) de remplissage qui tourne (il attend la suite)

(snip)
> Meilleure idée ?

var t='', b=[];
for(var i in navigator) {
	b.push('navigator.' + i + ' ==> ' + navigator[i]); }
alert(b.join('\n'));
t=b=i=null;

????
sans savoir si ça répond à la question ?!
(que je n'ai pas comprise ... que cherche t-il donc à faire exactement ?)



var b=[];
for(var i in navigator.plugins)
	b.push(i+' = '+navigator.plugins[i].name+'\n');

alert(b.join())
b=i=null;


Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3031

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 03:21 +0200
Message-ID<no8mrk$hm7$1@usenet.pasdenom.info>
In reply to#3029
Le 08/08/2016 à 00:57, SAM a écrit :
> Le 05/08/16 à 21:16, Gloops a écrit :
>> Bonjour tout le monde,
>>
>> J'ai vu sur
>>
>> http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm
>
> Ha! Merdum ! C'est de l'anglishe (ou de l'amerlock ?)

Ah ben ... oui, désolé.

>
>> qu'on pouvait parcourir, par exemple, les propriétés du navigateur
>> ainsi :
>>
>>             for (aProperty in navigator) {
>>                document.write(aProperty);
>>                document.write("<br />");
>>             }
>>
>> et ça affiche bravement les noms des propriétés du navigateur.
>>
>> Alors du coup, je me pose la question de comment on peut terminer ce
>> travail ?
>
> "terminer" ? "travail" ?
>
> Le terminé de document.write()
> c'est document.close();
>
> Le commencé de document.write()
> c'est document.open();
>
> à défaut de fermer l'écriture, normalement le navigateur et au moins
> Firefox a sa roue (ou jauge) de remplissage qui tourne (il attend la suite)

Ah non chez moi quand il a fini de charger la page l'extended statusbar 
affiche 100%, et ... ça veut dire ça y est chef, travail fini.

Il y met le temps, mais ... ça, c'est une autre question.
On n'a pas idée d'installer autant d'extensions sur une machine 
pareille, aussi. :)

>
> (snip)
>> Meilleure idée ?
>
> var t='', b=[];
> for(var i in navigator) {
>     b.push('navigator.' + i + ' ==> ' + navigator[i]); }
> alert(b.join('\n'));
> t=b=i=null;
>
> ????
> sans savoir si ça répond à la question ?!
> (que je n'ai pas comprise ... que cherche t-il donc à faire exactement ?)
>
>
>
> var b=[];
> for(var i in navigator.plugins)
>     b.push(i+' = '+navigator.plugins[i].name+'\n');
>
> alert(b.join())
> b=i=null;
>
>
> Cordialement,


Ben ... oui, c'est bien ça. Merci.

Pour moi, une propriété, ça sert à avoir un contenu, et quand on a dit 
que navigator a pour propriétés appName et appVersion, on n'a pas 
terminé, il reste encore à dire :

appName ==> Netscape
appVersion ==> 5.0 (Windows)

Je cherchais la syntaxe navigator[aProperty].
C'est vrai que c'est somme toute courant, mais ... mon neurone ne 
s'allumait pas.

A supposer qu'on veuille l'écrire sur la page web :

for(property in navigator)
   {
     document.write(property);
     document.write(" ==> ");
     document.write(navigator[property]);
     document.write("<br />");
   }

[toc] | [prev] | [next] | [standalone]


#3032

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 03:36 +0200
Message-ID<no8nmg$rii$1@usenet.pasdenom.info>
In reply to#3031
Le 08/08/2016 à 03:21, Gloops a écrit :
> Le 08/08/2016 à 00:57, SAM a écrit :
>> Le 05/08/16 à 21:16, Gloops a écrit :
>>> Bonjour tout le monde,
>>>
>>> J'ai vu sur
>>>
>>> http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm
>>
>> Ha! Merdum ! C'est de l'anglishe (ou de l'amerlock ?)
>
> Ah ben ... oui, désolé.
>
>>
>>> qu'on pouvait parcourir, par exemple, les propriétés du navigateur
>>> ainsi :
>>>
>>>             for (aProperty in navigator) {
>>>                document.write(aProperty);
>>>                document.write("<br />");
>>>             }
>>>
>>> et ça affiche bravement les noms des propriétés du navigateur.
>>>
>>> Alors du coup, je me pose la question de comment on peut terminer ce
>>> travail ?
>>
>> "terminer" ? "travail" ?
>>
>> Le terminé de document.write()
>> c'est document.close();
>>
>> Le commencé de document.write()
>> c'est document.open();
>>
>> à défaut de fermer l'écriture, normalement le navigateur et au moins
>> Firefox a sa roue (ou jauge) de remplissage qui tourne (il attend la
>> suite)
>
> Ah non chez moi quand il a fini de charger la page l'extended statusbar
> affiche 100%, et ... ça veut dire ça y est chef, travail fini.
>
> Il y met le temps, mais ... ça, c'est une autre question.
> On n'a pas idée d'installer autant d'extensions sur une machine
> pareille, aussi. :)
>
>>
>> (snip)
>>> Meilleure idée ?
>>
>> var t='', b=[];
>> for(var i in navigator) {
>>     b.push('navigator.' + i + ' ==> ' + navigator[i]); }
>> alert(b.join('\n'));
>> t=b=i=null;
>>
>> ????
>> sans savoir si ça répond à la question ?!
>> (que je n'ai pas comprise ... que cherche t-il donc à faire exactement ?)
>>
>>
>>
>> var b=[];
>> for(var i in navigator.plugins)
>>     b.push(i+' = '+navigator.plugins[i].name+'\n');
>>
>> alert(b.join())
>> b=i=null;
>>
>>
>> Cordialement,
>
>
> Ben ... oui, c'est bien ça. Merci.
>
> Pour moi, une propriété, ça sert à avoir un contenu, et quand on a dit
> que navigator a pour propriétés appName et appVersion, on n'a pas
> terminé, il reste encore à dire :
>
> appName ==> Netscape
> appVersion ==> 5.0 (Windows)
>
> Je cherchais la syntaxe navigator[aProperty].
> C'est vrai que c'est somme toute courant, mais ... mon neurone ne
> s'allumait pas.
>
> A supposer qu'on veuille l'écrire sur la page web :
>
> for(property in navigator)
>   {
>     document.write(property);
>     document.write(" ==> ");
>     document.write(navigator[property]);
>     document.write("<br />");
>   }
>

Tant qu'on y est, si on veut deux colonnes :

bfonce = false;
document.write("<table>")
for(property in navigator)
   {
     bfonce = !bfonce;
     if(bfonce)
       {
          document.write("<tr style='background-color:#dedede'><td>") 

       }
     else
       {
          document.write("<tr><td>")

       }
     document.write(property);
     document.write("</td><td>");
     document.write(navigator[property]);
     document.write("</td></tr>");
   }
   document.write("</table>")

[toc] | [prev] | [next] | [standalone]


#3040

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-08 12:04 +0200
Message-ID<57a85932$0$23758$426a74cc@news.free.fr>
In reply to#3032
Le 08/08/16 à 03:36, Gloops a écrit :
>
> Tant qu'on y est, si on veut deux colonnes :
>
> bfonce = false;
> document.write("<table>")

AAAaaRRRrrGGGggHHHhhh !!!

var ecrit = [];
for(var propriete in navigator) {
	ecrit.push('\n\t<dt>navigator.' + propriete +
	           '</dt>\n\t\t<dd>' + navigator[propriete] +'</dd>');
	}
document.write('<dl>' + ecrit.join('') +'\n</dl>');
ecrit=propriete=null;




Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3046

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 13:03 +0200
Message-ID<no9oue$cqa$1@usenet.pasdenom.info>
In reply to#3040
Le 08/08/2016 à 12:04, SAM a écrit :
> Le 08/08/16 à 03:36, Gloops a écrit :
>>
>> Tant qu'on y est, si on veut deux colonnes :
>>
>> bfonce = false;
>> document.write("<table>")
>
> AAAaaRRRrrGGGggHHHhhh !!!
>
> var ecrit = [];
> for(var propriete in navigator) {
>     ecrit.push('\n\t<dt>navigator.' + propriete +
>                '</dt>\n\t\t<dd>' + navigator[propriete] +'</dd>');
>     }
> document.write('<dl>' + ecrit.join('') +'\n</dl>');
> ecrit=propriete=null;
>
>
>
>
> Cordialement,


Ah oui, pour prendre moins de largeur ?

[toc] | [prev] | [next] | [standalone]


#3053

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-09 00:35 +0200
Message-ID<57a90945$0$19743$426a74cc@news.free.fr>
In reply to#3046
Le 08/08/16 à 13:03, Gloops a écrit :
> Le 08/08/2016 à 12:04, SAM a écrit :
>> Le 08/08/16 à 03:36, Gloops a écrit :
>>>
>>> document.write("<table>")
>>
>> AAAaaRRRrrGGGggHHHhhh !!!
>>
>> var ecrit = [];
>> for(var propriete in navigator) {
>>     ecrit.push('\n\t<dt>navigator.' + propriete +
>>                '</dt>\n\t\t<dd>' + navigator[propriete] +'</dd>');
>>     }
>> document.write('<dl>' + ecrit.join('') +'\n</dl>');
>
> Ah oui, pour prendre moins de largeur ?

Non, question de sémantique
propriété / résultat <—> terme / définition

Pour les colonnes on voit avec les styles

<http://stephane.moriaux.pagesperso-orange.fr/truc/proprietes-write>
ne pas faire attention aux scripts KKbouilla rajoutés par Orange :-(
et me dire si ça chagrine ta console


Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3041

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-08 12:04 +0200
Message-ID<57a85940$0$23758$426a74cc@news.free.fr>
In reply to#3032
Le 08/08/16 à 03:36, Gloops a écrit :
> bfonce = !bfonce;
>     if(bfonce)
>       {
>          document.write("<tr style='background-color:#dedede'><td>")
>       }
>     else
>       {
>          document.write("<tr><td>")
>
>       }

bfonce = !bfonce;
document.write('<tr'+(bfonce?' style="background:#dedede"':'')+'><td>');


Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3047

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 13:04 +0200
Message-ID<no9p05$cqa$2@usenet.pasdenom.info>
In reply to#3041
Le 08/08/2016 à 12:04, SAM a écrit :
> Le 08/08/16 à 03:36, Gloops a écrit :
>> bfonce = !bfonce;
>>     if(bfonce)
>>       {
>>          document.write("<tr style='background-color:#dedede'><td>")
>>       }
>>     else
>>       {
>>          document.write("<tr><td>")
>>
>>       }
>
> bfonce = !bfonce;
> document.write('<tr'+(bfonce?' style="background:#dedede"':'')+'><td>');
>
>
> Cordialement,

Effectivement, ça évite de prendre les deux tiers de la hauteur du code 
pour une instruction.

[toc] | [prev] | [next] | [standalone]


#3037

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 10:04 +0200
Message-ID<no9efc$dlc$1@usenet.pasdenom.info>
In reply to#3029
Le 08/08/2016 à 00:57, SAM a écrit :
> Le 05/08/16 à 21:16, Gloops a écrit :
>> Bonjour tout le monde,
>>
>> J'ai vu sur
>>
>> http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm
>
> Ha! Merdum ! C'est de l'anglishe (ou de l'amerlock ?)
>
>> qu'on pouvait parcourir, par exemple, les propriétés du navigateur
>> ainsi :
>>
>>             for (aProperty in navigator) {
>>                document.write(aProperty);
>>                document.write("<br />");
>>             }
>>
>> et ça affiche bravement les noms des propriétés du navigateur.
>>
>> Alors du coup, je me pose la question de comment on peut terminer ce
>> travail ?
>
> "terminer" ? "travail" ?
>
> Le terminé de document.write()
> c'est document.close();
>
> Le commencé de document.write()
> c'est document.open();
>
> à défaut de fermer l'écriture, normalement le navigateur et au moins
> Firefox a sa roue (ou jauge) de remplissage qui tourne (il attend la suite)
>
> (snip)
>> Meilleure idée ?
>
> var t='', b=[];
> for(var i in navigator) {
>     b.push('navigator.' + i + ' ==> ' + navigator[i]); }
> alert(b.join('\n'));
> t=b=i=null;
>
> ????
> sans savoir si ça répond à la question ?!
> (que je n'ai pas comprise ... que cherche t-il donc à faire exactement ?)
>
>
>
> var b=[];
> for(var i in navigator.plugins)
>     b.push(i+' = '+navigator.plugins[i].name+'\n');
>
> alert(b.join())
> b=i=null;
>
>
> Cordialement,


Un point m'avait échappé.


for(prop in navigator)
   {
     document.write(prop + navigator[prop] + "<br />");
   }

s'exécute bien, mais en m'affichant ça dans la console :


/*
Exception: [Exception... "Component is not available"  nsresult: 
"0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: 
Scratchpad/2 :: <TOP_LEVEL> :: line 12"  data: no]
*/

C'est-à-dire, erreur : composant navigator non défini.

La même syntaxe avec document affiche les propriétés de document (et 
leurs valeurs) sans rechigner.

Si je tape
document.write(navigator[appName]);

il m'affiche bien Netscape, mais en protestant que appName n'existe pas.

Tandis que
document.write(navigator.appName);

s'exécute sans erreur, mais cette syntaxe ne permet pas de parcourir les 
propriétés.

[toc] | [prev] | [next] | [standalone]


#3038

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 10:26 +0200
Message-ID<no9fod$jvf$1@usenet.pasdenom.info>
In reply to#3037
Le 08/08/2016 à 10:04, Gloops a écrit :
> Le 08/08/2016 à 00:57, SAM a écrit :
>> Le 05/08/16 à 21:16, Gloops a écrit :
>>> Bonjour tout le monde,
>>>
>>> J'ai vu sur
>>>
>>> http://www.tutorialspoint.com/javascript/javascript_forin_loop.htm
>>
>> Ha! Merdum ! C'est de l'anglishe (ou de l'amerlock ?)
>>
>>> qu'on pouvait parcourir, par exemple, les propriétés du navigateur
>>> ainsi :
>>>
>>>             for (aProperty in navigator) {
>>>                document.write(aProperty);
>>>                document.write("<br />");
>>>             }
>>>
>>> et ça affiche bravement les noms des propriétés du navigateur.
>>>
>>> Alors du coup, je me pose la question de comment on peut terminer ce
>>> travail ?
>>
>> "terminer" ? "travail" ?
>>
>> Le terminé de document.write()
>> c'est document.close();
>>
>> Le commencé de document.write()
>> c'est document.open();
>>
>> à défaut de fermer l'écriture, normalement le navigateur et au moins
>> Firefox a sa roue (ou jauge) de remplissage qui tourne (il attend la
>> suite)
>>
>> (snip)
>>> Meilleure idée ?
>>
>> var t='', b=[];
>> for(var i in navigator) {
>>     b.push('navigator.' + i + ' ==> ' + navigator[i]); }
>> alert(b.join('\n'));
>> t=b=i=null;
>>
>> ????
>> sans savoir si ça répond à la question ?!
>> (que je n'ai pas comprise ... que cherche t-il donc à faire exactement ?)
>>
>>
>>
>> var b=[];
>> for(var i in navigator.plugins)
>>     b.push(i+' = '+navigator.plugins[i].name+'\n');
>>
>> alert(b.join())
>> b=i=null;
>>
>>
>> Cordialement,
>
>
> Un point m'avait échappé.
>
>
> for(prop in navigator)
>   {
>     document.write(prop + navigator[prop] + "<br />");
>   }
>
> s'exécute bien, mais en m'affichant ça dans la console :
>
>
> /*
> Exception: [Exception... "Component is not available"  nsresult:
> "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame ::
> Scratchpad/2 :: <TOP_LEVEL> :: line 12"  data: no]
> */
>
> C'est-à-dire, erreur : composant navigator non défini.
>
> La même syntaxe avec document affiche les propriétés de document (et
> leurs valeurs) sans rechigner.
>
> Si je tape
> document.write(navigator[appName]);
>
> il m'affiche bien Netscape, mais en protestant que appName n'existe pas.
>
> Tandis que
> document.write(navigator.appName);
>
> s'exécute sans erreur, mais cette syntaxe ne permet pas de parcourir les
> propriétés.
>
>

Ah, j'ai trouvé :

document.write(this.navigator[prop])

s'exécute sans erreur.



Le navigateur est Firefox 48.0, sur Windows XP Home SP3


[toc] | [prev] | [next] | [standalone]


#3042

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-08 12:14 +0200
Message-ID<57a85b6a$0$5295$426a74cc@news.free.fr>
In reply to#3037
Le 08/08/16 à 10:04, Gloops a écrit :
> Un point m'avait échappé.
>
>
> for(prop in navigator)
>   {
>     document.write(prop + navigator[prop] + "<br />");
>   }
>
> s'exécute bien, mais en m'affichant ça dans la console :


Est-ce que :

for(prop in navigator)
   {
     document.write(prop + eval('navigator.'+prop) + "<br />");
   }

résoudrait ton problème ?

(pas testé)

Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3048

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 13:13 +0200
Message-ID<no9phc$m6b$1@usenet.pasdenom.info>
In reply to#3042
Le 08/08/2016 à 12:14, SAM a écrit :
> Le 08/08/16 à 10:04, Gloops a écrit :
>> Un point m'avait échappé.
>>
>>
>> for(prop in navigator)
>>   {
>>     document.write(prop + navigator[prop] + "<br />");
>>   }
>>
>> s'exécute bien, mais en m'affichant ça dans la console :
>
>
> Est-ce que :
>
> for(prop in navigator)
>   {
>     document.write(prop + eval('navigator.'+prop) + "<br />");
>   }
>
> résoudrait ton problème ?
>
> (pas testé)
>
> Cordialement,

ça affiche bien le résultat mais en grinçant dans la console :

/*
Exception: [Exception... "Component is not available"  nsresult: 
"0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: 
Scratchpad/2 line 4 > eval :: <TOP_LEVEL> :: line 1"  data: no]
*/

Donc même résolution, j'ai mis

	document.write(prop + " ==> " + eval('this.navigator.'+prop) + "<br />");

Je cherchais comment effectuer cette interprétation, je me rappelais 
eval en VB, mais je ne savais pas que c'était pareil en Javascript.

Dans ce cas de figure c'est facultatif, mais à l'occasion ça doit bien 
être utile.

[toc] | [prev] | [next] | [standalone]


#3051

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-09 00:23 +0200
Message-ID<57a90649$0$5261$426a74cc@news.free.fr>
In reply to#3048
Le 08/08/16 à 13:13, Gloops a écrit :
> Le 08/08/2016 à 12:14, SAM a écrit :
>>
>> for(prop in navigator)
>>   {
>>     document.write(prop + eval('navigator.'+prop) + "<br />");
>>   }
>>
>> résoudrait ton problème ?
>
> ça affiche bien le résultat mais en grinçant dans la console :
>
> /*
> Exception: [Exception... "Component is not available"  nsresult:
> "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame ::
> Scratchpad/2 line 4 > eval :: <TOP_LEVEL> :: line 1"  data: no]
> */

Je n'arrive pas à reproduire la chose ...





Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3054

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-09 02:58 +0200
Message-ID<nob9sb$f7b$1@usenet.pasdenom.info>
In reply to#3051
Le 09/08/2016 à 00:23, SAM a écrit :
> Le 08/08/16 à 13:13, Gloops a écrit :
>> Le 08/08/2016 à 12:14, SAM a écrit :
>>>
>>> for(prop in navigator)
>>>   {
>>>     document.write(prop + eval('navigator.'+prop) + "<br />");
>>>   }
>>>
>>> résoudrait ton problème ?
>>
>> ça affiche bien le résultat mais en grinçant dans la console :
>>
>> /*
>> Exception: [Exception... "Component is not available"  nsresult:
>> "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame ::
>> Scratchpad/2 line 4 > eval :: <TOP_LEVEL> :: line 1"  data: no]
>> */
>
> Je n'arrive pas à reproduire la chose ...
>
>
>
>
>
> Cordialement,

Avec le même navigateur ?

J'ai installé l'extension avec les outils de développement, il se peut 
que ça change quelques bricoles.

[toc] | [prev] | [next] | [standalone]


#3056

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-09 14:11 +0200
Message-ID<57a9c858$0$3343$426a74cc@news.free.fr>
In reply to#3054
Le 09/08/16 à 02:58, Gloops a écrit :
> Le 09/08/2016 à 00:23, SAM a écrit :
>> Le 08/08/16 à 13:13, Gloops a écrit :
>>>
>>> /*
>>> Exception: [Exception... "Component is not available"  nsresult:
>>> "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame ::
>>> Scratchpad/2 line 4 > eval :: <TOP_LEVEL> :: line 1"  data: no]
>>> */
>>
>> Je n'arrive pas à reproduire la chose ...

Dans la console du navigateur ou la "Console web"

> Avec le même navigateur ?

Firefox 48 pour Mac (vieux)

> J'ai installé l'extension avec les outils de développement,

Quelle extension ?
(y en a un paquet !)

Pour ma part :
- Firebug
- Web Developer

Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3057

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-09 15:52 +0200
Message-ID<nocn7h$80c$1@usenet.pasdenom.info>
In reply to#3056
Le 09/08/2016 à 14:11, SAM a écrit :
> Le 09/08/16 à 02:58, Gloops a écrit :
>> Le 09/08/2016 à 00:23, SAM a écrit :
>>> Le 08/08/16 à 13:13, Gloops a écrit :
>>>>
>>>> /*
>>>> Exception: [Exception... "Component is not available"  nsresult:
>>>> "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame ::
>>>> Scratchpad/2 line 4 > eval :: <TOP_LEVEL> :: line 1"  data: no]
>>>> */
>>>
>>> Je n'arrive pas à reproduire la chose ...
>
> Dans la console du navigateur ou la "Console web"


La console web, en fait. C'est pour ça qu'est écrit "Scratchpad". Je ne 
sais pas encore trop ce que signifie le 2 derrière. J'ai cru que c'était 
un numéro de version, mais une fois j'ai eu autre chose.

Il faudra que je regarde dans l'autre.

>
>> Avec le même navigateur ?
>
> Firefox 48 pour Mac (vieux)

Ah, donc même navigateur, mais pas même plateforme.
On pourrait farfouiller pour voir si une autre extension y serait pour 
quelque chose, mais j'ai un peu peur que ça fasse beaucoup de temps pour 
quelque chose qu'en définitive j'ai contourné assez facilement.

Si ça se trouve, l'objet navigator est considéré comme non disponible 
car déjà déclaré pour une autre opération, et en le préfixant je 
confirme que c'est le même. Bizarre mais crédible.

>
>> J'ai installé l'extension avec les outils de développement,
>
> Quelle extension ?
> (y en a un paquet !)
>
> Pour ma part :
> - Firebug
> - Web Developer

Web Developer


>
> Cordialement,

Pareil

[toc] | [prev] | [next] | [standalone]


#3052

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-08-09 00:24 +0200
Message-ID<57a906ae$0$5261$426a74cc@news.free.fr>
In reply to#3048
Le 08/08/16 à 13:13, Gloops a écrit :
>
>     document.write(prop + " ==> " + eval('this.navigator.'+prop) + "<br
> />");
>
> Je cherchais comment effectuer cette interprétation, je me rappelais
> eval en VB, mais je ne savais pas que c'était pareil en Javascript.
>
> Dans ce cas de figure c'est facultatif, mais à l'occasion ça doit bien
> être utile.

eval est très très très très rarement nécessaire en JS

La preuve : tu as trouvé comment faire sans et en + propre !
[cite]
document.write(this.navigator[prop])
s'exécute sans erreur chez moi.
[/cite]

bien que ça semble très utile en Json où on fait évaluer une string qui 
représente un tableau d'objets
<http://www.json.org/js.html>
<http://www.json.org/json-fr.html>



Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#3049

FromGloops <gloops@zailes.invalid.org.invalid>
Date2016-08-08 13:22 +0200
Message-ID<no9q27$tb3$1@usenet.pasdenom.info>
In reply to#3029
Le 08/08/2016 à 00:57, SAM a écrit :
> Le terminé de document.write()
> c'est document.close();
>
> Le commencé de document.write()
> c'est document.open();

Au fait le document.close() c'était une boutade ?
Parce que l'ouverture est faite automatiquement par HTML ...
C'est bien avec cscript ou wscript, qu'on ouvre et ferme les documents 
explicitement ?

Sinon c'est effectivement arrivé deux fois que Firefox oublie de 
s'arrêter d'attendre la suite ...

[toc] | [prev] | [standalone]


Back to top | Article view | fr.comp.lang.javascript


csiph-web