<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://blog.lalex.com/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>LAlex devblog v6 - Comportement de instanceof avec les types simples  - Commentaires</title>
  <link>http://blog.lalex.com/</link>
  <atom:link href="http://blog.lalex.com/feed/rss2/comments/124" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Fri, 28 Nov 2008 07:30:10 +0100</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
    
    <item>
    <title>Comportement de instanceof avec les types simples - LAlex</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c255</link>
    <guid isPermaLink="false">urn:md5:66c0b530fc6ecef41345a866c28151ee</guid>
    <pubDate>Tue, 21 Oct 2003 19:03:24 +0000</pubDate>
    <dc:creator>LAlex</dc:creator>
    
    <description>&lt;p&gt;&lt;quote&gt;PS : la reflexion c pas penser tres fort&lt;/quote&gt;MDR !!! &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;smiley&quot; /&gt; :D&lt;/p&gt;
&lt;p&gt;Sinon, la &quot;reflexion&quot; sans passer par un parcour du prototype, ca ne me paraît pas possible ! &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_sad.gif&quot; alt=&quot;:(&quot; class=&quot;smiley&quot; /&gt; Et d'ailleurs, se passer de prototype me parait de moins en moins évident ... :?&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - Kalysto</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c254</link>
    <guid isPermaLink="false">urn:md5:cf0456349ad60c2dcf8c245a5feff162</guid>
    <pubDate>Tue, 21 Oct 2003 16:00:59 +0000</pubDate>
    <dc:creator>Kalysto</dc:creator>
    
    <description>&lt;p&gt;Bref, si j'ai bien compris, instanceof n'est pas a utiliser c ca ?&lt;/p&gt;
&lt;p&gt;Dans le meme genre de trucs, ya qqch que je trouve assez bizarre avex MX, c l'instruction typeof(XXX)!&lt;/p&gt;
&lt;p&gt;Ca renvoie tout le temps &quot;object&quot; ! C'est pas faux vu ke toute instance est au minimum une instance d'Object. Mais ca renvoie pas le type (la classe) de ton objet !!!&lt;/p&gt;
&lt;p&gt;Sinon, autre remarque, normalement en AS2, on devrait plus entendre parler de prototype non ? Est ce qu'il existe des moyens genre comme la &quot;reflexion&quot; en java pour decouvrir les meta data d'une classes (nom de methodes, attributes, ...).&lt;/p&gt;
&lt;p&gt;PS : la reflexion c pas penser tres fort &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt; mais c un moyen que Java offre pour explorer l'interface d'une classe dynamiquement.&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - LAlex</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c253</link>
    <guid isPermaLink="false">urn:md5:791d87d1036110b04c7ff2accfe86b72</guid>
    <pubDate>Mon, 20 Oct 2003 19:00:23 +0000</pubDate>
    <dc:creator>LAlex</dc:creator>
    
    <description>&lt;p&gt;zwetan &gt;&gt; Je suis bien d'accord, mais à ce moment la, a partir de quel moment peut on considérer qu'une variable est bien l'instance d'un classe ? A partir de son prototype ? Si c'est le cas, le __proto__ d'une chaine de type primitif est le même que String.prototype ... :roll:&lt;/p&gt;
&lt;p&gt;Et plus simplement, c'est encore une situation dans laquelle le typage fort tel qu'il est implémenté dans Flash MX 2004 perd tout sons sens ... :roll:&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - ekameleon</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c252</link>
    <guid isPermaLink="false">urn:md5:c355e9833d1f78d25119f2440fb3e6af</guid>
    <pubDate>Mon, 20 Oct 2003 18:53:28 +0000</pubDate>
    <dc:creator>ekameleon</dc:creator>
    
    <description>&lt;p&gt;On peut faire aussi :&lt;br /&gt;
&lt;code class=&quot;actionscript&quot;&gt;a = &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;chaine&amp;quot;&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;a &lt;span style=&quot;color: #0066CC;&quot;&gt;instanceof&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//false&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;typeof a : &amp;quot;&lt;/span&gt; + &lt;span style=&quot;color: #0066CC;&quot;&gt;typeof&lt;/span&gt; a&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// string&lt;/span&gt;&lt;br /&gt;
b = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;chaine&amp;quot;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;b &lt;span style=&quot;color: #0066CC;&quot;&gt;instanceof&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;//true&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;typeof b : &amp;quot;&lt;/span&gt; + &lt;span style=&quot;color: #0066CC;&quot;&gt;typeof&lt;/span&gt; b&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// object &lt;/span&gt;&lt;/code&gt;&lt;br /&gt;
bye &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - zwetan</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c251</link>
    <guid isPermaLink="false">urn:md5:ee9ccc18aead10775d4563c974fdc071</guid>
    <pubDate>Mon, 20 Oct 2003 17:31:28 +0000</pubDate>
    <dc:creator>zwetan</dc:creator>
    
    <description>&lt;p&gt;euh lol, je commnete vraiment pas pour raler juste pour etre precis &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;
&lt;p&gt;instanceof -&gt; une instance de, cad un objet creer par une fonction constructor&lt;/p&gt;
&lt;p&gt;donc pour moi c'est tres logique que:&lt;/p&gt;
&lt;p&gt;toto = &quot;hello&quot;;&lt;br /&gt;
toto instanceof String //false&lt;/p&gt;
&lt;p&gt;titi = new String( &quot;hello&quot; );&lt;br /&gt;
titi instanceof String //true&lt;/p&gt;
&lt;p&gt;un type primitif n'est pas forcément pareil qu'une instance de classe.&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - LAlex</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c249</link>
    <guid isPermaLink="false">urn:md5:f06d58f54c5e6dc9b5f891f5c75dd98f</guid>
    <pubDate>Mon, 20 Oct 2003 14:32:05 +0000</pubDate>
    <dc:creator>LAlex</dc:creator>
    
    <description>&lt;p&gt;Ce n'est pas une mauvaise implémentation, au contraire ... moi je trouve ce comportement plus logique ! &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_wink.gif&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Sinon, pour le undefined ou le 0, j'y avais pas pensé non plus ... Le coup du 0 quand on utilise le cast de undefined vers false, c'est assez vicieux, et je m'étais deja fait avoir !!! &lt;img src=&quot;http://common.lalex.com/themes/devblog/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Par contre, le test du == avec undefined, c'est assez hallucinant quand même !!! 8O Si je me rappelle bien, le == fait un cast si besoin alors que le === n'en fait pas ... 8|&lt;/p&gt;
&lt;p&gt;D'ailleurs, pour revenir au typage des variables avec les types simples, il apparaît que les chaines de caractères ne sont pas pour Flash de type String :&lt;code class=&quot;actionscript&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; s1 = &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;chaine&amp;quot;&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; s2 = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; &lt;span style=&quot;color: #0066CC;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;chaine&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;==&amp;nbsp; : &amp;quot;&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;s1 == s2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// true&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;=== : &amp;quot;&lt;/span&gt; + &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;s1 === s2&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// false &lt;/span&gt;&lt;/code&gt;&lt;/p&gt;</description>
  </item>
      
    
    <item>
    <title>Comportement de instanceof avec les types simples - Timothée Groleau</title>
    <link>http://blog.lalex.com/post/2003/10/20/Comportement-de-instanceof-avec-les-types-simples#c248</link>
    <guid isPermaLink="false">urn:md5:6320e26c43e9d1ffe3baa2b6250aae99</guid>
    <pubDate>Mon, 20 Oct 2003 14:18:29 +0000</pubDate>
    <dc:creator>Timothée Groleau</dc:creator>
    
    <description>&lt;p&gt;Aerm, bon j'ai parle trop vite alors, une fois de plus :O.&lt;/p&gt;
&lt;p&gt;Bizarre quand meme ce instanceof natif... Je dois avouer que j'avais pas trop reflechis a utiliser un nombre dans mon myInstanceOf. Maintenant que tu me le montres, je vois que le code n'est pas bon parce que 0 (zero) ne serait pas vu comme un Number. A la rigueur autant faire sauter la condition completement:&lt;br /&gt;
&lt;code class=&quot;actionscript&quot;&gt;myInstanceOf = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;obj, theClass&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;!theClass.&lt;span style=&quot;color: #0066CC;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; t = obj;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;do&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;t = t.&lt;span style=&quot;color: #0066CC;&quot;&gt;__proto__&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; === theClass.&lt;span style=&quot;color: #0066CC;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;true&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span style=&quot;color: #b1b100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;t&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;return&lt;/span&gt; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;false&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/code&gt;
J'ai mis un tripe egual '===' paske bizrrement quand j'ai teste:
&lt;code class=&quot;actionscript&quot;&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;myInstanceOf&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;undefined&lt;/span&gt;, &lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;/code&gt;
Ca m'a renvoye true!! J'ai peu hallucine, je dois dire, le triple egual regle le probleme mais que penses-tu de ca:
&lt;code class=&quot;actionscript&quot;&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// [type Object]&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;undefined&lt;/span&gt; == &lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// true!!&amp;nbsp; &amp;lt;- Oh bordel!&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #0066CC;&quot;&gt;trace&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0066CC;&quot;&gt;undefined&lt;/span&gt; === &lt;span style=&quot;color: #0066CC;&quot;&gt;Number&lt;/span&gt;.&lt;span style=&quot;color: #0066CC;&quot;&gt;prototype&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// false!! ouf &lt;/span&gt;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Bon, en tout cas desole d'avoir donne une mauvaise implementation de instanceof.&lt;/p&gt;</description>
  </item>
      
</channel>
</rss>