类型判断:

    typeJudge() {
//typeof 用来判断变量类型
var s: string = 'egret';
var isString: boolean = typeof s === 'string';
console.log(typeof s === 'string');
console.log(typeof s === 'number');
console.log(typeof s === 'any');
console.log(typeof s === 'array');
//instanceof 用来判断方法或者接口类型
var a: A = new A();
console.log(a instanceof A);
console.log(a instanceof B);
}

函数:

function area(shape: string, width: number, height: number) {
var area = width * height;
return "I'm a " + shape + " with an area of " + area + " cm squared.";
} document.body.innerHTML = area("rectangle", 30, 15);
console.log(document.body.innerHTML )

时间戳获取:

Javascript 获取当前时间戳(毫秒级别):
第一种方法: var timestamp1 = Date.parse( new Date());
结果:1470220594000 第二种方法: var timestamp2 = ( new Date()).valueOf();
结果:1470220608533 第三种方法: var timestamp3 = new Date().getTime();
结果:1470220608533
第一种获取的时间戳是精确到秒,第二种和第三种是获取的时间戳精确到毫秒。 获取指定时间的时间戳: new Date("2016-08-03 00:00:00");
时间戳转化成时间: function timetrans(date){
var date = new Date(date*1000);//如果date为13位不需要乘1000
var Y = date.getFullYear() + '-';
var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-';
var D = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate()) + ' ';
var h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
var m = (date.getMinutes() <10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
var s = (date.getSeconds() <10 ? '0' + date.getSeconds() : date.getSeconds());
return Y+M+D+h+m+s;
}

日期工具类: 
dateTime.ts:

formatDate(){
//三目运算符
const Dates = new Date(); //年份
const Year : number = Dates.getFullYear(); //月份下标是0-11
const Months : any = ( Dates.getMonth() + 1 ) < 10 ? '0' + (Dates.getMonth() + 1) : ( Dates.getMonth() + 1); //具体的天数
const Day : any = Dates.getDate() < 10 ? '0' + Dates.getDate() : Dates.getDate(); //小时
const Hours = Dates.getHours() < 10 ? '0' + Dates.getHours() : Dates.getHours(); //分钟
const Minutes = Dates.getMinutes() < 10 ? '0' + Dates.getMinutes() : Dates.getMinutes(); //秒
const Seconds = Dates.getSeconds() < 10 ? '0' + Dates.getSeconds() : Dates.getSeconds(); //返回数据格式
return Year + '-' + Months + '-' + Day + '-' + Hours + ':' + Minutes + ':' + Seconds;
}

计时器工具类: 
timer.ts

public timePromise : any;
... timer( flag ){ //flag是一个标识,何时计时和何时停止
var second = 0;
if( flag == 1){
this.timePromise = setInterval(
(success)=>{ //回掉函数开始计时了
second++ ;
//other actions
},1000);
}
else if( flag == 0 ){
//other actions
//清除计时器
window.clearInterval(this.timePromise);
}
}

typescript 学习记录的更多相关文章

  1. TypeScript学习记录

    TypeScript官网 TypeScript中文网 TypeScrpit Handbook 中文版 DefinitelyTyped The TypeScript Definition Manager ...

  2. TypeScript学习指南--目录索引

    关于TypeScript: TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程. TypeS ...

  3. JS继续学习记录(一)

    JS继续学习记录(一) 总感觉自己的js code写的还算可以,但是又深知好像只知道一些皮毛,所以打算仔细记录一下js晋级学习过程,日日往复 先记录一下自己目前对js的了解吧(20180828) js ...

  4. TypeScript学习文档-基础篇(完结)

    目录 TypeScript学习第一章:TypeScript初识 1.1 TypeScript学习初见 1.2 TypeScript介绍 1.3 JS .TS 和 ES之间的关系 1.4 TS的竞争者有 ...

  5. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  6. Java 静态内部类与非静态内部类 学习记录.

    目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...

  7. Apache Shiro 学习记录4

    今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...

  8. UWP学习记录12-应用到应用的通信

    UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...

  9. UWP学习记录11-设计和UI

    UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...

随机推荐

  1. Oracle 创建触发器实现自增长

    Oracle中没有主键,要实现自增长,需要创建触发器,每次插入数据的时候进行ID赋值. 环境:Oracle11,Navicat工具连接 创建了一个表,字段如下(字段名,表名都需要大写,你小写了还无效. ...

  2. 在CentOS7上安装MySQL5.7-YUM源方式

    获取RPM包 # wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 列出RPM包里都有哪些文件 # ...

  3. Zabbix——解决中文显示乱码

    前提条件: 准备好上传工具,我用的是WinSCP 使用字体是微软雅黑,如果使用其他的更改名称即可. 更改Zabbix服务器的默认参数: vi /usr/share/zabbix/include/def ...

  4. parsing XML document from class path resource [applicationtext.xml]; nested exception is java.io.FileNotFoundException: class path resource [applicationtext.xml] cannot be opened because it does not e

    控制台异常: parsing XML document from class path resource [applicationtext.xml]; nested exception is java ...

  5. Altium Designer常用快捷键

    一:Altium原理图快捷键:    Shift+左键选择    :实现多个目标选择    Ctrl+左键拖动    :保持连线拖动目标        Shift+c       :清除当前过滤(?? ...

  6. 嵌入式LInux之C语言提升篇---Skr Skr Up Up

    嵌入式C语言提升 致敬:每一个奋斗的人! Up Up UpC语言常见编译错误1.预处理错误 -E    1-1 找不到源文件错误         自己定义头文件 使用 “xxx.h” 搜索的目录 ./ ...

  7. Multimodal Machine Learning:A Survey and Taxonomy 综述阅读笔记

    该笔记基于:Multimodal Machine Learning:A Survey and Taxonomy 该论文是一篇对多模态机器学习领域的总结和分类,且发表于2017年,算是相当新的综述了.老 ...

  8. java入门---基本数据类型之引用数据类型&数据类型转换

        接着上一篇文章来,这次就先看看什么是引用数据类型?首先得满足以下条件: 在Java中,引用类型的变量非常类似于C/C++的指针.引用类型指向一个对象,指向对象的变量是引用变量.这些变量在声明时 ...

  9. AS 3.1 多library合并打包成aar的正确方式(fat-aar)

    前言 主要参考fat-aar来合并打包. 但是这个fat-aar很久没维护了,如果直接使用它会有很多问题.由于对gradle脚本也不是太熟,就只能顺着它的意思,将gradle降级成2.2.3的版本. ...

  10. FpSpread基本句法

    1,   在调用的.aspx页面开头注册:     "FarPoint.Web.Spread"   Assembly="FarPoint.Web.SpreadJ,   V ...