<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Google Chrome 崭新浏览器</title>
	<atom:link href="http://erlang-china.org/misc/google_chrome.html/feed" rel="self" type="application/rss+xml" />
	<link>http://erlang-china.org/misc/google_chrome.html</link>
	<description>erlang 中文社区</description>
	<pubDate>Mon, 01 Dec 2008 18:31:34 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
		<item>
		<title>By: Daze</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-6076</link>
		<dc:creator>Daze</dc:creator>
		<pubDate>Thu, 18 Sep 2008 17:32:01 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-6076</guid>
		<description>@jackyz

Chrome 也采用了 JIT 吗?
M$ 说的? 搞不懂, 直接晕了!</description>
		<content:encoded><![CDATA[<p>@jackyz</p>
<p>Chrome 也采用了 JIT 吗?<br />
M$ 说的? 搞不懂, 直接晕了!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jackyz</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-6044</link>
		<dc:creator>jackyz</dc:creator>
		<pubDate>Wed, 17 Sep 2008 08:50:56 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-6044</guid>
		<description>＠Daze,

Chrome 的 JavaScript 优化,其中之一据说就是"加速已经执行过的语句"或许它们已经秘而不宣地做到了“JavaScript 的尾递归优化”也不一定.

Google 的"Next Web"战略从 Chrome 的推出已经可以看得很明显,那就是——死飚 JavaScript 不放手. M$ 说 Google 会加速 JavaScript 1000 倍,或许有夸张的成分.但,毫无疑问, Google 的行动表明,在他眼中的"未来"仍然是基于浏览器的——而且是纯浏览器——连 FLASH 这类插件的生存空间都没有.

JavaScript 很精彩,未来大有可观.</description>
		<content:encoded><![CDATA[<p>＠Daze,</p>
<p>Chrome 的 JavaScript 优化,其中之一据说就是&#8221;加速已经执行过的语句&#8221;或许它们已经秘而不宣地做到了“JavaScript 的尾递归优化”也不一定.</p>
<p>Google 的&#8221;Next Web&#8221;战略从 Chrome 的推出已经可以看得很明显,那就是——死飚 JavaScript 不放手. M$ 说 Google 会加速 JavaScript 1000 倍,或许有夸张的成分.但,毫无疑问, Google 的行动表明,在他眼中的&#8221;未来&#8221;仍然是基于浏览器的——而且是纯浏览器——连 FLASH 这类插件的生存空间都没有.</p>
<p>JavaScript 很精彩,未来大有可观.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daze</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-6022</link>
		<dc:creator>Daze</dc:creator>
		<pubDate>Tue, 16 Sep 2008 09:38:04 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-6022</guid>
		<description>在 John Resig 的 Blog 中发现了一篇关于 JavaScript 的性能基准测试的文章（http://ejohn.org/blog/javascript-benchmark-quality/），里面提到了三种不同的测试分类，还有 Webkit、Mozilla 与 Google 的测试套件，这下可以好好玩玩了，把这堆浏览器都放上去跑跑。</description>
		<content:encoded><![CDATA[<p>在 John Resig 的 Blog 中发现了一篇关于 JavaScript 的性能基准测试的文章（http://ejohn.org/blog/javascript-benchmark-quality/），里面提到了三种不同的测试分类，还有 Webkit、Mozilla 与 Google 的测试套件，这下可以好好玩玩了，把这堆浏览器都放上去跑跑。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daze</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-6006</link>
		<dc:creator>Daze</dc:creator>
		<pubDate>Mon, 15 Sep 2008 18:56:41 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-6006</guid>
		<description>还有，我发现 Chrome 的 js 执行速度虽然快，但 flash 却很不稳定，经常告诉我 flash 插件失去响应，任务管理器又不能重启 flash 插件，只好关掉 chrome 重来，好在它的启动非常快。</description>
		<content:encoded><![CDATA[<p>还有，我发现 Chrome 的 js 执行速度虽然快，但 flash 却很不稳定，经常告诉我 flash 插件失去响应，任务管理器又不能重启 flash 插件，只好关掉 chrome 重来，好在它的启动非常快。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Daze</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-6004</link>
		<dc:creator>Daze</dc:creator>
		<pubDate>Mon, 15 Sep 2008 18:38:33 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-6004</guid>
		<description>今天在 Javaeye 的论坛上乱逛时看到有人在 FP 版中问一个尾递归的效率问题，代码是 Javascript 的，我一时性起，于是在五个浏览器中（IE7、FF3.01、Safari3.1.2、Opera9.50、Chrome0.2.149.29）都执行了一下，本来是想了解下 JS 的尾递归的性能，但想不到有了意外的发现：Chrome 实在是快得让人不可思议，而且尾递归和迭代基本一样，加上它可以创建一个快捷（就是加参数打开简洁版的窗口），这样真的可以拿来当应用软件的前台UI了。

下面是代码，我稍微改了一点，请看注释：
&lt;code&gt;


	
	function oldRecursion(n){
		var j=1;
		for(var i=n;i&#62;0;i--){
			j*=i;
		}
		return j;
	}
	function recursion(n){
		return n==1?1:n*recursion(n-1);
	}
	function tailRecursion(n, a){
	    //我觉得每次都赋值会影响性能
	    //a = a&#124;&#124;1;
	    return n==1?a:tailRecursion(n-1, a*n);
	}
	
	
//	-----------------------------------------------------------------------------------------
	var start=new Date();
	for(var i=0;i&#60;100000;i++){
		var r1=oldRecursion(9);
	}
	var end=new Date();
	document.write(""+(end-start)+"");
//	-----------------------------------------------------------------------------------------
	var start=new Date();
	for(var i=0;i&#60;100000;i++){
		var r2=recursion(9);
	}
	var end=new Date();
	document.write(""+(end-start)+"");
//	-----------------------------------------------------------------------------------------
	var start=new Date();
	for(var i=0;i&#60;100000;i++){
		//前面的函数改了，这里当然也要改成两个参数
		var r3=tailRecursion(9,1);
	}
	var end=new Date();
	document.write(""+(end-start)+"");
	document.write(r1+" "+r2+" "+r3);
//	-----------------------------------------------------------------------------------------
	


&lt;/code&gt;

执行结果：
IE
迭代：1297
递归：5985
尾递归：7484
这些值没太大的意义，因为在 IE 的执行过程中，它已经弹出对话框说执行时间太长，问我是否要继续，这样的时间肯定不准了。

FF
迭代：381
递归：596
尾递归：554

Opera
迭代：484
递归：812
尾递归：844

Safari
迭代：312
递归：953
尾递归：985

Chrome
迭代：92
递归：89
尾递归：70
不比不知道，一比吓一跳，Chrome 实在太快了，但三个值非常接近，而且每次都不太一样，一下这个快点，一下那个快点，我不明白为什么会这样！我想加长它的执行时间，用 99 做为参数来调用，这时别的浏览器已经非常慢了，IE 更是等得没耐心，但 Chrome 还有
迭代：445
递归：713
尾递归：514
这样的表现，虽说这时递归版的函数已经溢出，但这个结果实在太让人吃惊了。</description>
		<content:encoded><![CDATA[<p>今天在 Javaeye 的论坛上乱逛时看到有人在 FP 版中问一个尾递归的效率问题，代码是 Javascript 的，我一时性起，于是在五个浏览器中（IE7、FF3.01、Safari3.1.2、Opera9.50、Chrome0.2.149.29）都执行了一下，本来是想了解下 JS 的尾递归的性能，但想不到有了意外的发现：Chrome 实在是快得让人不可思议，而且尾递归和迭代基本一样，加上它可以创建一个快捷（就是加参数打开简洁版的窗口），这样真的可以拿来当应用软件的前台UI了。</p>
<p>下面是代码，我稍微改了一点，请看注释：<br />
<code></p>
<p>	function oldRecursion(n){<br />
		var j=1;<br />
		for(var i=n;i&gt;0;i--){<br />
			j*=i;<br />
		}<br />
		return j;<br />
	}<br />
	function recursion(n){<br />
		return n==1?1:n*recursion(n-1);<br />
	}<br />
	function tailRecursion(n, a){<br />
	    //我觉得每次都赋值会影响性能<br />
	    //a = a||1;<br />
	    return n==1?a:tailRecursion(n-1, a*n);<br />
	}</p>
<p>//	-----------------------------------------------------------------------------------------<br />
	var start=new Date();<br />
	for(var i=0;i&lt;100000;i++){<br />
		var r1=oldRecursion(9);<br />
	}<br />
	var end=new Date();<br />
	document.write(""+(end-start)+"");<br />
//	-----------------------------------------------------------------------------------------<br />
	var start=new Date();<br />
	for(var i=0;i&lt;100000;i++){<br />
		var r2=recursion(9);<br />
	}<br />
	var end=new Date();<br />
	document.write(""+(end-start)+"");<br />
//	-----------------------------------------------------------------------------------------<br />
	var start=new Date();<br />
	for(var i=0;i&lt;100000;i++){<br />
		//前面的函数改了，这里当然也要改成两个参数<br />
		var r3=tailRecursion(9,1);<br />
	}<br />
	var end=new Date();<br />
	document.write(""+(end-start)+"");<br />
	document.write(r1+" "+r2+" "+r3);<br />
//	-----------------------------------------------------------------------------------------</p>
<p></code></p>
<p>执行结果：<br />
IE<br />
迭代：1297<br />
递归：5985<br />
尾递归：7484<br />
这些值没太大的意义，因为在 IE 的执行过程中，它已经弹出对话框说执行时间太长，问我是否要继续，这样的时间肯定不准了。</p>
<p>FF<br />
迭代：381<br />
递归：596<br />
尾递归：554</p>
<p>Opera<br />
迭代：484<br />
递归：812<br />
尾递归：844</p>
<p>Safari<br />
迭代：312<br />
递归：953<br />
尾递归：985</p>
<p>Chrome<br />
迭代：92<br />
递归：89<br />
尾递归：70<br />
不比不知道，一比吓一跳，Chrome 实在太快了，但三个值非常接近，而且每次都不太一样，一下这个快点，一下那个快点，我不明白为什么会这样！我想加长它的执行时间，用 99 做为参数来调用，这时别的浏览器已经非常慢了，IE 更是等得没耐心，但 Chrome 还有<br />
迭代：445<br />
递归：713<br />
尾递归：514<br />
这样的表现，虽说这时递归版的函数已经溢出，但这个结果实在太让人吃惊了。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Botlilin</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-5912</link>
		<dc:creator>Botlilin</dc:creator>
		<pubDate>Thu, 11 Sep 2008 15:22:04 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-5912</guid>
		<description>用了，不错！</description>
		<content:encoded><![CDATA[<p>用了，不错！</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jackyz</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-5749</link>
		<dc:creator>jackyz</dc:creator>
		<pubDate>Wed, 03 Sep 2008 02:10:44 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-5749</guid>
		<description>@jeffchen, 啥？注册用户收不到邮件？好像没这问题吧。

最近俺的 ff 老罢工，估计是插件插得太满，这个 chrome 的“任务管理器”貌似能解决这个问题。不过，插件又会是另外一个问题。直接晕死。</description>
		<content:encoded><![CDATA[<p>@jeffchen, 啥？注册用户收不到邮件？好像没这问题吧。</p>
<p>最近俺的 ff 老罢工，估计是插件插得太满，这个 chrome 的“任务管理器”貌似能解决这个问题。不过，插件又会是另外一个问题。直接晕死。</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jeffchen</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-5736</link>
		<dc:creator>jeffchen</dc:creator>
		<pubDate>Tue, 02 Sep 2008 14:49:36 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-5736</guid>
		<description>hi
如果注册用户收不到邮件的问题还没有解决的话，你可以去下载一个wordpress插件，有了那个插件用户无需密码验证了</description>
		<content:encoded><![CDATA[<p>hi<br />
如果注册用户收不到邮件的问题还没有解决的话，你可以去下载一个wordpress插件，有了那个插件用户无需密码验证了</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Arbow</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-5733</link>
		<dc:creator>Arbow</dc:creator>
		<pubDate>Tue, 02 Sep 2008 12:11:14 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-5733</guid>
		<description>貌似Android &#038; iPhone都是用webkit这个引擎，曾在Android模拟器上玩过下，兼容性可以</description>
		<content:encoded><![CDATA[<p>貌似Android &#038; iPhone都是用webkit这个引擎，曾在Android模拟器上玩过下，兼容性可以</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: pi1ot</title>
		<link>http://erlang-china.org/misc/google_chrome.html#comment-5729</link>
		<dc:creator>pi1ot</dc:creator>
		<pubDate>Tue, 02 Sep 2008 08:28:53 +0000</pubDate>
		<guid isPermaLink="false">http://erlang-china.org/?p=223#comment-5729</guid>
		<description>TMD发布时又要多测试一个浏览器了...</description>
		<content:encoded><![CDATA[<p>TMD发布时又要多测试一个浏览器了&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
