<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Embat Consultors SL. Consultoría web: Desarrollo, Diseño y Programación &#187; javascript</title>
	<atom:link href="http://www.embatconsultors.com/blog/tag/javascript/feed" rel="self" type="application/rss+xml" />
	<link>http://www.embatconsultors.com/blog</link>
	<description>Embat Consultors SL. Consultoría web: Desarrollo, Diseño y Programación</description>
	<lastBuildDate>Thu, 22 Jul 2010 14:36:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>El impacto de la doble negación</title>
		<link>http://www.embatconsultors.com/blog/post-tecnico/el-impacto-de-la-doble-negacion.html</link>
		<comments>http://www.embatconsultors.com/blog/post-tecnico/el-impacto-de-la-doble-negacion.html#comments</comments>
		<pubDate>Sun, 20 Apr 2008 09:35:52 +0000</pubDate>
		<dc:creator>Joan Ballester</dc:creator>
				<category><![CDATA[Post Técnico]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://www.embatconsultors.com/blog/programacion/el-impacto-de-la-doble-negacion.html</guid>
		<description><![CDATA[La semana pasada, en un curso de JavaScript (ese querido lenguaje&#8230; jeje), estábamos analizando las librerías de diferentes frameworks (por encima).
Entre ellos, como no, echamos el ojo a la de MooTools y vimos esto:
function $chk(obj){

 return !!(obj &#124;&#124; obj === 0);

 };
Lo que más nos extrañó fue la doble negación (el &#8220;===&#8221; triple igual se [...]]]></description>
			<content:encoded><![CDATA[<p>La semana pasada, en un curso de JavaScript (ese querido lenguaje&#8230; jeje), estábamos analizando las librerías de diferentes frameworks (por encima).</p>
<p>Entre ellos, como no, echamos el ojo a la de <a href="http://mootools.net" title="Pedazo Framework" target="_blank">MooTools</a> y vimos esto:</p>
<blockquote class="codigo"><p><font color="#339966">function $chk(obj){<br />
</font></p>
<blockquote><p><font color="#339966"> return !!(obj || obj === 0);<br />
</font></p></blockquote>
<p><font color="#339966"> };</font></p></blockquote>
<p><font color="#000000">Lo que más nos extrañó fue la doble negación (el &#8220;</font>===&#8221; triple igual se usa cuando quieres comparar valor y tipo de la variable), e indagando sucedió esto:</p>
<p>Pusimos en el firebug</p>
<blockquote style="display: block" class="codigo"><p><font color="#339966">alert(undefined)  <font color="#000000">Salió Undefined</font></font></p>
<p><font color="#339966">alert(!undefined) <font color="#000000">Salió True</font><br />
</font></p>
<p><font color="#339966">alert(!!undefined)  <font color="#000000">Tachán&#8230; salió False.</font></font></p></blockquote>
<p>En resumen, lo pusieron para evitar que les saliera un &#8220;undefined&#8221; como una casa dependiendo del valor que le entrara a la función $chk(obj) .</p>
<p>Ya sabemos una cosa más&#8230; &#8220;!!undefined = False &#8221;</p>
<p>Saludos!<br />
<h3>Posts más comentados:</h3>
<ul class="related_post">
<li><a href="http://www.embatconsultors.com/blog/post-tecnico/101-razones-por-las-que-no-utilizar-flash.html" title="101 Razones por las que no utilizar flash">101 Razones por las que no utilizar flash (14)</a></li>
<li><a href="http://www.embatconsultors.com/blog/post-tecnico/tecnicas-para-mejorar-nuestro-posicionamiento-web-seo-parte-1.html" title="Tecnicas para mejorar nuestro posicionamiento web (seo) parte 1">Tecnicas para mejorar nuestro posicionamiento web (seo) parte 1 (6)</a></li>
<li><a href="http://www.embatconsultors.com/blog/embat-consultors/nueva-etapa-9-de-agosto.html" title="Nueva etapa: 9 de Agosto">Nueva etapa: 9 de Agosto (6)</a></li>
<li><a href="http://www.embatconsultors.com/blog/embat-consultors/cambios-mas-cambios.html" title="Cambios, más cambios">Cambios, más cambios (5)</a></li>
<li><a href="http://www.embatconsultors.com/blog/post-tecnico/posicionar-web-en-yahoo-diferencias-con-google.html" title="Posicionar web en yahoo (diferencias con google)">Posicionar web en yahoo (diferencias con google) (4)</a></li>
<li><a href="http://www.embatconsultors.com/blog/embat-consultors/nueva-etapa-dia-1.html" title="Nueva etapa: Día 1">Nueva etapa: Día 1 (3)</a></li>
<li><a href="http://www.embatconsultors.com/blog/embat-consultors/decisiones-y-casualidades.html" title="Decisiones y casualidades">Decisiones y casualidades (2)</a></li>
<li><a href="http://www.embatconsultors.com/blog/internet/gran-hermano-y-google-es-el-super.html" title="Gran Hermano y Google es el &#8220;Super&#8221;">Gran Hermano y Google es el &#8220;Super&#8221; (2)</a></li>
<li><a href="http://www.embatconsultors.com/blog/internet/el-antes-y-el-ahora-two-way-vs-one-way.html" title="El antes y el ahora. Two-way Vs One-way">El antes y el ahora. Two-way Vs One-way (2)</a></li>
<li><a href="http://www.embatconsultors.com/blog/embat-consultors/ofrecemos-el-pack-anticrisis.html" title="Ofrecemos el &#8220;Pack Anticrisis&#8221;">Ofrecemos el &#8220;Pack Anticrisis&#8221; (2)</a></li>
</ul>
<p>&copy;2010 <a href="http://www.embatconsultors.com/blog">Embat Consultors SL. Consultoría web: Desarrollo, Diseño y Programación</a>. All Rights Reserved.</p>.]]></content:encoded>
			<wfw:commentRss>http://www.embatconsultors.com/blog/post-tecnico/el-impacto-de-la-doble-negacion.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
