<?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>走走停停看看 &#187; switch</title>
	<atom:link href="http://shawphy.com/tag/switch/feed" rel="self" type="application/rss+xml" />
	<link>http://shawphy.com</link>
	<description>关注HTML,CSS,JavaScript,jQuery等前端开发</description>
	<lastBuildDate>Mon, 12 Jul 2010 15:45:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>JavaScript switch case 语句设置范围</title>
		<link>http://shawphy.com/2008/07/javascript-switch-case-setting-range.html</link>
		<comments>http://shawphy.com/2008/07/javascript-switch-case-setting-range.html#comments</comments>
		<pubDate>Mon, 07 Jul 2008 20:07:25 +0000</pubDate>
		<dc:creator>Shawphy</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[case]]></category>
		<category><![CDATA[switch]]></category>

		<guid isPermaLink="false">http://shawphy.com/?p=65</guid>
		<description><![CDATA[不知是否出于什么缘故，我google搜索 javascript switch case 范围 这几个关键字，出来的前几条都是csdn上关于无解的表示。 可能是其他编译型语言中，case后便必须是常量的缘故吧。 后来在一个边角的地方看到某人发帖是VB还是不知道哪个语言中的中实现了switch case语句的范围选择，大家看了下面代码就明白了。 var x=1 switch(true){ &#160; &#160; case&#160;x&#62;0&#38;&#38;x&#60;10: &#160; &#160; &#160; &#160; alert(1);break; &#160; &#160; case&#160;x&#62;=10&#38;&#38;x&#60;20: &#160; &#160; &#160; &#160; alert(2);break; } 看明白啦？就是利用传递给switch的参数设为true，把原来的变量变成常量，常量变变量，逆向思维。巧妙吧？ 本来我想出来的办法是这样的，没有上面的好，没有跳出思维定势，也贴出来给大家看看，权当娱乐娱乐了 var x=1 switch(x){ &#160; &#160; case&#160;(x&#62;0&#38;&#38;x&#60;10)*x: &#160; &#160; &#160; &#8230; <a href="http://shawphy.com/2008/07/javascript-switch-case-setting-range.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>不知是否出于什么缘故，我google搜索<br />
javascript switch case 范围<br />
这几个关键字，出来的前几条都是csdn上关于无解的表示。<br />
可能是其他编译型语言中，case后便必须是常量的缘故吧。</p>
<p>后来在一个边角的地方看到某人发帖是VB还是不知道哪个语言中的中实现了switch case语句的范围选择，大家看了下面代码就明白了。</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Green;">var</span><span style="color: Gray;"> </span><span style="color: Blue;">x</span><span style="color: Gray;">=</span><span style="color: Maroon;">1</span></li>
<li><span style="color: Green;">switch</span><span style="color: Olive;">(</span><span style="color: Green;">true</span><span style="color: Olive;">){</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">case</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&gt;</span><span style="color: Maroon;">0</span><span style="color: Gray;">&amp;&amp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&lt;</span><span style="color: Maroon;">10</span><span style="color: Gray;">:</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">alert</span><span style="color: Olive;">(</span><span style="color: Maroon;">1</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span><span style="color: Green;">break</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">case</span><span style="color: Gray;">&nbsp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&gt;=</span><span style="color: Maroon;">10</span><span style="color: Gray;">&amp;&amp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&lt;</span><span style="color: Maroon;">20</span><span style="color: Gray;">:</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">alert</span><span style="color: Olive;">(</span><span style="color: Maroon;">2</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span><span style="color: Green;">break</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li></ol></div>
<p>看明白啦？就是利用传递给switch的参数设为true，把原来的变量变成常量，常量变变量，逆向思维。巧妙吧？</p>
<p>本来我想出来的办法是这样的，没有上面的好，没有跳出思维定势，也贴出来给大家看看，权当娱乐娱乐了</p>
<div class="hl-surround"><ol class="hl-main ln-show" title="Double click to hide line number." ondblclick = "linenumber(this)"><li class="hl-firstline"><span style="color: Green;">var</span><span style="color: Gray;"> </span><span style="color: Blue;">x</span><span style="color: Gray;">=</span><span style="color: Maroon;">1</span></li>
<li><span style="color: Green;">switch</span><span style="color: Olive;">(</span><span style="color: Blue;">x</span><span style="color: Olive;">){</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">case</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">x</span><span style="color: Gray;">&gt;</span><span style="color: Maroon;">0</span><span style="color: Gray;">&amp;&amp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&lt;</span><span style="color: Maroon;">10</span><span style="color: Olive;">)</span><span style="color: Gray;">*</span><span style="color: Blue;">x</span><span style="color: Gray;">:</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">alert</span><span style="color: Olive;">(</span><span style="color: Maroon;">1</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span><span style="color: Green;">break</span><span style="color: Gray;">;</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; </span><span style="color: Green;">case</span><span style="color: Gray;">&nbsp;</span><span style="color: Olive;">(</span><span style="color: Blue;">x</span><span style="color: Gray;">&gt;=</span><span style="color: Maroon;">10</span><span style="color: Gray;">&amp;&amp;</span><span style="color: Blue;">x</span><span style="color: Gray;">&lt;</span><span style="color: Maroon;">20</span><span style="color: Olive;">)</span><span style="color: Gray;">*</span><span style="color: Blue;">x</span><span style="color: Gray;">:</span></li>
<li><span style="color: Gray;">&nbsp; &nbsp; &nbsp; &nbsp; </span><span style="color: Blue;">alert</span><span style="color: Olive;">(</span><span style="color: Maroon;">2</span><span style="color: Olive;">)</span><span style="color: Gray;">;</span><span style="color: Green;">break</span><span style="color: Gray;">;</span></li>
<li><span style="color: Olive;">}</span></li></ol></div>
]]></content:encoded>
			<wfw:commentRss>http://shawphy.com/2008/07/javascript-switch-case-setting-range.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
