(function(){var d, a;var d1 = new Date();for(var i = 0; i < 1000000; i++) d = window.setTimeout;var d2 = new Date();for(var i = 0; i < 1000000; i++) a = setTimeout;var d3 = new Date();alert((d2 - d1) + " : " + (d3 - d2));})();
解决方案 »
- phonegap写安卓程序问题
- 咨询下,求你们进来看下 javascript DOM编程的语法问题
- prototype.js错误
- 请教一个JS写的点击按钮弹窗,但是内容一多则不正常运行!
- firefox中textbox的OnInput事件问题???
- if(event&&event.srcElement&&event.srcElement.tagName=="SELECT")是什么意思?
- 模糊查询
- 弹出窗口的问题。1:怎么实现模态弹出窗口;2:弹出窗口关闭之后,怎么样通知父窗口刷新
- 变量赋值问题
- 同一页面两个不同功能的脚本为什么没有办法同时将功能实现?!?
- 一个js操作select的问题,请帮忙,多谢。
- 能不能把一个网面中两个不同ID的内容放到一个JS文件中进行输出?
<script>(function(){var d, a;var d1 = new Date();for(var i = 0; i < 1000000; i++) d = window.setTimeout;var d2 = new Date();for(var i = 0; i < 1000000; i++) a =this.setTimeout;var d3 = new Date();alert((d2 - d1) + " : " + (d3 - d2));})();
</script>
var o = new Object;
o.ss = function(){};
var ss = o.ss;(function(){var d, a;var d1 = new Date();for(var i = 0; i < 1000000; i++) d = o.ss;var d2 = new Date();for(var i = 0; i < 1000000; i++) a = ss;var d3 = new Date();alert((d2 - d1) + " : " + (d3 - d2));})();
直接用xx的形式寻找,只需要查找一次。
在浏览器中,我们都是直接在window对象下进行操作的,window是可以省略的。
而window常量,则是对window本身的引用,就是相当于 this.xx所以,一楼正解。
<script>
var window = function(){
//下面是window本身系统赋予的属性,你可以更改,但是一开始的值与你无关
this.setTimeout = function(){};
var window = this;
var setTimeout = this.setTimeout;
//你可以看做你所写的所有的代码都是这里开始往下的
(function(){
var d, a;
var d1 = new Date();
for(var i = 0; i < 1000000; i++) d = window.setTimeout;
var d2 = new Date();
for(var i = 0; i < 1000000; i++) a = setTimeout;
var d3 = new Date();
alert((d2 - d1) + " : " + (d3 - d2));
})();
//你的代码结束
};
new window(); //一开始系统会自动new一个window
</script>