setTimeout和setInterval
(转自: http://www.mxria.com/helps/js_error/trap_error_1572.htm ) 由于 JavaScript 是异步的,可以使用 setTimeout 和 setInterval 来计划执行函数。 注意:定时处理不是ECMAScript 的标准,它们在 DOM (文档对象模型) 被实现。 function foo(){}var id = setTimeout(foo,1000);// 返回一个大于零的数字 当 setTimeout 被调用时,它会返回一个 ID 标识并且计划在将来大约1000 毫秒后调用 foo 函数。 foo 函数只会被执行一次。 基于 JavaScript 引擎的计时策略,以及本质上的单线程运行方式,所以其它代码的运行可能会阻塞此线程。 因此没法确保函数会在 setTimeout 指定的时刻被调用。 作为第一个参数的函数将会在全局作用域中执行,因此函数内的 this 将会指向这个全局对象。 functionFoo(){this.value =42;this.method =function(){// this 指向全局对象 console.log(this.value);// 输出:undefined}; setTimeout(this.method,500);}newFoo(); 注意: setTimeout