博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 的Timer 在javascript中的实现--基于Typescript
阅读量:6841 次
发布时间:2019-06-26

本文共 1324 字,大约阅读时间需要 4 分钟。

class Timer {//js 内置的timer对象    private _jsInnerTimerObj: any;    private _enable: boolean;    private _handlerInvoker:any;    private _interval: number;        get Interval(): number{        return this._interval;    }    set Interval(value: number) {        this._interval = value;        //重新设定新的定时器        if (this._jsInnerTimerObj) {            window.clearInterval(this._jsInnerTimerObj);        }                   }    private _elapsed:any;    get Elapsed(): any{        return this._elapsed;    }    set Elapsed(value: any) {        /*if (!isFunction(value)) {            throw new Error("the Elapsed value must be function!");        }*/        this._elapsed = value;        //只有设置了触发事件才定时,没有回调的定时器是无意义的定时执行其中的匿名方法        this._jsInnerTimerObj = window.setInterval(this._handlerInvoker, this.Interval);                     }    /*  构造函数    *@interval 设置定时器的毫秒数    */    constructor(interval: number) {        this._enable = false;        this.Interval = interval;        var that = this;        this._handlerInvoker = function () {             if (that.Elapsed&&that._enable==true){                that.Elapsed();             }        }    }    Start() {        this._enable = true;    }    Stop() {        this._enable = false;    }}var t = new Timer(500);t.Elapsed = function () {   document.write(99)}t.Start();

 

转载地址:http://zazul.baihongyu.com/

你可能感兴趣的文章
疯狂Activiti6.0连载(17) Drools规则语法概述
查看>>
PHP下使用curl问题小结
查看>>
airflow-datapipeline解放双手,撸起来
查看>>
解决IE浏览器下对于ajax重复提交处理的bug
查看>>
import static和import的区别
查看>>
使用fastjson
查看>>
[算法研究]の冒泡算法--javascript实现
查看>>
Hibernate Annotation笔记
查看>>
年轻时不做会后悔的八件事
查看>>
重读传递参数
查看>>
剖析 Recipe
查看>>
OS X系统启动的基本步骤
查看>>
C Primer Plus 第6章 C控制语句:循环 6.11 使用函数返回值的循环的例子
查看>>
怎么保存退出vi编辑
查看>>
JBoss 系列三十九:jBPM5示例之 Multiple Instance Sub-Process
查看>>
C++面向对象网络编程之SockCli
查看>>
REST概述
查看>>
史上最详细的Android Studio系列教程三--快捷键
查看>>
goclipse 修改输出编译命令,显示完整的错误信息
查看>>
如何提高你的销售业绩
查看>>