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


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

Tableau de chaînes de caractères

Started byGloops <gloops@zailes.invalid.org.invalid>
First post2017-10-21 23:19 +0200
Last post2017-10-24 02:49 +0200
Articles 10 — 5 participants

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


Contents

  Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-21 23:19 +0200
    Re: Tableau de chaînes de caractères db <blue_moon_fr@_hotmail.com> - 2017-10-21 23:32 +0200
      Re: Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-22 18:10 +0200
        Re: Tableau de chaînes de caractères Olivier Miakinen <om+news@miakinen.net> - 2017-10-22 22:25 +0200
          Re: Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-23 10:59 +0200
          Re: Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-23 22:34 +0200
    Re: Tableau de chaînes de caractères Eric Demeester <neuneu@potiron.invalid> - 2017-10-22 11:24 +0200
      Re: Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-22 18:15 +0200
    Re: Tableau de chaînes de caractères Elhwen Dico <elhwen.dicote@gmail.com> - 2017-10-23 15:02 +0200
      Re: Tableau de chaînes de caractères Gloops <gloops@zailes.invalid.org.invalid> - 2017-10-24 02:49 +0200

#3119 — Tableau de chaînes de caractères

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-21 23:19 +0200
SubjectTableau de chaînes de caractères
Message-ID<osgdl7$fcd$1@nemo.pasdenom.info>
Bonjour tout le monde,

Quand j'exécute ça, je vois "False", alors que je m'attends à voir "True".

Où est-ce que je me trompe ?


  var A = [".jpg", ".png", ".gif"];
  if(A.isarray)
  {
     WScript.Echo("True");
  }
  else
  {
     WScript.Echo("False");
  }

-- 
Besoin d'un autre système, pas d'un autre gouvernement.

[toc] | [next] | [standalone]


#3120

Fromdb <blue_moon_fr@_hotmail.com>
Date2017-10-21 23:32 +0200
Message-ID<osgedu$1rs5$1@news.gegeweb.eu>
In reply to#3119
Le 21/10/2017 à 23:19, Gloops a écrit :
> Bonjour tout le monde,
> 
> Quand j'exécute ça, je vois "False", alors que je m'attends à voir "True".
> 
> Où est-ce que je me trompe ?
> 
> 
>   var A = [".jpg", ".png", ".gif"];
>   if(A.isarray)
>   {
>      WScript.Echo("True");
>   }
>   else
>   {
>      WScript.Echo("False");
>   }
> 


Peut-être :

if (Array.isArray(A))...

db

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


#3122

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-22 18:10 +0200
Message-ID<osiftl$9nf$1@nemo.pasdenom.info>
In reply to#3120
Le 21/10/2017 à 23:32, db a écrit :
> Le 21/10/2017 à 23:19, Gloops a écrit :
>> Bonjour tout le monde,
>>
>> Quand j'exécute ça, je vois "False", alors que je m'attends à voir 
>> "True".
>>
>> Où est-ce que je me trompe ?
>>
>>
>>   var A = [".jpg", ".png", ".gif"];
>>   if(A.isarray)
>>   {
>>      WScript.Echo("True");
>>   }
>>   else
>>   {
>>      WScript.Echo("False");
>>   }
>>
> 
> 
> Peut-être :
> 
> if (Array.isArray(A))...
> 
> db

Merci pour la proposition, mais il me dit "Cet objet ne gère pas cette 
propriété ou cette méthode.

D'ailleurs, pareil si je lui dis

var A = Array.of(".jpg", ".png", ".gif");

et avant j'ai essayé avec Array.from.

Il n'y a pas de déclaration particulière à faire, pour utiliser Array ?


-- 
Besoin d'un autre système, pas d'un autre gouvernement.

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


#3124

FromOlivier Miakinen <om+news@miakinen.net>
Date2017-10-22 22:25 +0200
Message-ID<osiusb$lap$1@cabale.usenet-fr.net>
In reply to#3122
Bonjour,

Le 22/10/2017 18:10, Gloops a écrit :
>> 
>> Peut-être :
>> 
>> if (Array.isArray(A))...
> 
> Merci pour la proposition, mais il me dit "Cet objet ne gère pas cette 
> propriété ou cette méthode.

Une recherche sur isArray sur le web retourne plein de pages disant
que cette fonction n'a pas toujours existé, et expliquant comment
la définir si elle n'existe pas par défaut :

if(!Array.isArray) {
  Array.isArray = function(arg) {
    return Object.prototype.toString.call(arg) === '[object Array]';
  };
}


-- 
Olivier Miakinen

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


#3125

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-23 10:59 +0200
Message-ID<oskb1h$tbs$1@nemo.pasdenom.info>
In reply to#3124
Le 22/10/2017 à 22:25, Olivier Miakinen a écrit :
> Bonjour,
> 
> Le 22/10/2017 18:10, Gloops a écrit :
>>>
>>> Peut-être :
>>>
>>> if (Array.isArray(A))...
>>
>> Merci pour la proposition, mais il me dit "Cet objet ne gère pas cette
>> propriété ou cette méthode.
> 
> Une recherche sur isArray sur le web retourne plein de pages disant
> que cette fonction n'a pas toujours existé, et expliquant comment
> la définir si elle n'existe pas par défaut :
> 
> if(!Array.isArray) {
>    Array.isArray = function(arg) {
>      return Object.prototype.toString.call(arg) === '[object Array]';
>    };
> }
> 
> 

OK merci. Apparemment j'étais trop concentré pour voir ça, alors j'ai 
fait mon test sur chacune des valeurs plutôt que sur l'appartenance au 
tableau.

Maintenant que j'ai remis la machine d'aplomb je pense que je devrais 
avoir un moment cet après-midi pour tester ça.


-- 
Besoin d'un autre système, pas d'un autre gouvernement.

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


#3127

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-23 22:34 +0200
Message-ID<osljoq$dh$1@nemo.pasdenom.info>
In reply to#3124
Le 22/10/2017 à 22:25, Olivier Miakinen a écrit :
> Bonjour,
> 
> Le 22/10/2017 18:10, Gloops a écrit :
>>>
>>> Peut-être :
>>>
>>> if (Array.isArray(A))...
>>
>> Merci pour la proposition, mais il me dit "Cet objet ne gère pas cette
>> propriété ou cette méthode.
> 
> Une recherche sur isArray sur le web retourne plein de pages disant
> que cette fonction n'a pas toujours existé, et expliquant comment
> la définir si elle n'existe pas par défaut :
> 
> if(!Array.isArray) {
>    Array.isArray = function(arg) {
>      return Object.prototype.toString.call(arg) === '[object Array]';
>    };
> }
> 
> 

Effectivement c'est tout bon, et ce qui m'a la plus servi pour détecter 
si une chaîne appartient à la liste c'est ça :

if(!Array.indexOf){
   Array.indexOf = function(arg1, arg2) {
	// arg1 : tableau ; arg2 : chaîne à y chercher
     for(var i = 0; i<arg1.length; i++)
     {
       if(arg1[i] == arg2)return i;
     }
     return -1;
   }
}


-- 
Besoin d'un autre système, pas d'un autre gouvernement.

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


#3121

FromEric Demeester <neuneu@potiron.invalid>
Date2017-10-22 11:24 +0200
Message-ID<qmooucp0h0mcg33f4q3stdetetn1lmbook@4ax.com>
In reply to#3119
Bonjour,

Gloops (Sat, 21 Oct 2017 23:19:48 +0200 - fr.comp.lang.javascript) :

> Quand j'exécute ça, je vois "False", alors que je m'attends à voir "True".

Je pense que db	a raison, il faut utiliser la méthode isArray() :

>   var A = [".jpg", ".png", ".gif"];
>   if(A.isarray)
    
    if(Array.isArray(A))

>   {
>      WScript.Echo("True");
>   }
>   else
>   {
>      WScript.Echo("False");
>   }

doit renvoyer « True ».

Voir : https://www.w3schools.com/jsref/jsref_isarray.asp

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


#3123

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-22 18:15 +0200
Message-ID<osig7o$9ts$1@nemo.pasdenom.info>
In reply to#3121
Le 22/10/2017 à 11:24, Eric Demeester a écrit :
> Bonjour,
> 
> Gloops (Sat, 21 Oct 2017 23:19:48 +0200 - fr.comp.lang.javascript) :
> 
>> Quand j'exécute ça, je vois "False", alors que je m'attends à voir "True".
> 
> Je pense que db	a raison, il faut utiliser la méthode isArray() :
> 
>>    var A = [".jpg", ".png", ".gif"];
>>    if(A.isarray)
>      
>      if(Array.isArray(A))
> 
>>    {
>>       WScript.Echo("True");
>>    }
>>    else
>>    {
>>       WScript.Echo("False");
>>    }
> 
> doit renvoyer « True ».
> 
> Voir : https://www.w3schools.com/jsref/jsref_isarray.asp
> 

Merci,

Est-ce qu'il y a une déclaration particulière à faire ?

C'est un script destiné à être exécuté par CScript.exe sous Windows, or 
l'exemple donné par w3schools parle d'une page web.

Ou à la limite j'écris une application hta, ça serait un moyen de 
contournement.

-- 
Besoin d'un autre système, pas d'un autre gouvernement.

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


#3126

FromElhwen Dico <elhwen.dicote@gmail.com>
Date2017-10-23 15:02 +0200
Message-ID<59ede84a$0$3614$426a34cc@news.free.fr>
In reply to#3119
Le 21/10/2017 à 23:19, Gloops a écrit :
> Bonjour tout le monde,
> 
> Quand j'exécute ça, je vois "False", alors que je m'attends à voir "True".
> 
> Où est-ce que je me trompe ?
> 
> 
>   var A = [".jpg", ".png", ".gif"];
>   if(A.isarray)
>   {
>      WScript.Echo("True");
>   }
>   else
>   {
>      WScript.Echo("False");
>   }
> 

   En fait, il faut utiliser Array.isArray(A)
   D'abord, il faut faire attention aux majuscules/minuscules. Elles 
sont significatives.
   Ensuite,
A.isarray accède à un membre de l'objet A. Ce membre n'existe pas et la 
valeur retournée est undefined qui se convertit en false.

   Il faudrait plutôt écrire

const exts = ['.jpg', '.png', 'gif'];
if (Array.isArray && typeof Array.isArray === 'function') {
	console.log('Array.isArray(exts) = ' + Array.isArray(exts));
}

executé sur node 6.11.3 ->
Array.isArray(exts) = true

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


#3128

FromGloops <gloops@zailes.invalid.org.invalid>
Date2017-10-24 02:49 +0200
Message-ID<osm2m5$bl2$1@nemo.pasdenom.info>
In reply to#3126
Le 23/10/2017 à 15:02, Elhwen Dico a écrit :
> Le 21/10/2017 à 23:19, Gloops a écrit :
>> Bonjour tout le monde,
>>
>> Quand j'exécute ça, je vois "False", alors que je m'attends à voir 
>> "True".
>>
>> Où est-ce que je me trompe ?
>>
>>
>>   var A = [".jpg", ".png", ".gif"];
>>   if(A.isarray)
>>   {
>>      WScript.Echo("True");
>>   }
>>   else
>>   {
>>      WScript.Echo("False");
>>   }
>>
> 
>    En fait, il faut utiliser Array.isArray(A)
>    D'abord, il faut faire attention aux majuscules/minuscules. Elles 
> sont significatives.
>    Ensuite,
> A.isarray accède à un membre de l'objet A. Ce membre n'existe pas et la 
> valeur retournée est undefined qui se convertit en false.
> 
>    Il faudrait plutôt écrire
> 
> const exts = ['.jpg', '.png', 'gif'];
> if (Array.isArray && typeof Array.isArray === 'function') {
>      console.log('Array.isArray(exts) = ' + Array.isArray(exts));
> }
> 
> executé sur node 6.11.3 ->
> Array.isArray(exts) = true

Bonjour, et merci pour la réponse.

Je crois que nous avons un problème de diffusion des newsgroups, le 
problème n'est hélas pas neuf.

Olivier Miakinen (Message-ID: <osiusb$lap$1@cabale.usenet-fr.net>) a 
signalé le problème des références pas déclarées partout, et de la 
nécessité de redonner le code d'une fonction quand elle n'est pas connue.

En réponse j'ai indiqué que j'ai pu exploiter ça, notamment sur la 
fonction indexOf (appliquée ici non pas à une chaîne de caractères mais 
à un tableau, bien entendu).

https://groups.google.com/forum/#!search/fr.comp.lang.javascript$20tableau$20de$20cha%C3%AEnes$20de$20caract%C3%A8res/fr.comp.lang.javascript/wy1BePdLKxY/BI6Lsu1VBgAJ


-- 
Besoin d'un autre système, pas d'un autre gouvernement.

[toc] | [prev] | [standalone]


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


csiph-web