TypeScript 入门(1)--基本数据类型

/**
 * Created by BenX on 2017/2/12.
 */
//基本数据类型Demo
//Boolean布尔值
    //最基础的数据类型就是简单的True/False在JavaScript和TypeScript中被称为是Boolean
var isDone: boolean = false;
console.info(isDone)
//Number数字 可以将其它进制的数字转换成十进制
//和JavaScript一样在TypeScript中所有的number都是浮点值 TypeScript除了支持Ecma2015中的16进制和十进制外  还支持二进制和二进制类型
var decLiteral: number = 6;
var hexLiteral: number = 0x9837abdef;
var binaryLiteral: number = 0b0010;
var octalLiteral: number = 0o74563;
console.info(decLiteral, hexLiteral, binaryLiteral, octalLiteral);
//String 字符串
//在使用JavaScript创建网页和应用程序时  要用到很多基础的功能来处理字符串  和其它语言一样  我们使用String类型来表示那些文本数据和JavaScript一样
//TypeScript也可以使用双引号或单引号来围绕字符串数据
var xm: string = "bob";
//xm="Trek";
console.info(xm)
//当然了也可以使用模板字符串 它能支持多行文本和内嵌表达式 这些字符串使用反引号(Tab键上面的键)包围  并且嵌入的表达式使用${expr}这样的形式表示
var sex: string = "男";
var age: number = 28;
var sentence: string = `Hello ,my sex ${sex} \n I'll be age ${age}`;
console.info(sentence)

//Array数组
//TypeScript 和JavaScript一样 允许你使用数组 数组类型的定义可以有两种写法  第一种写法 你的数组元素类型后添加[] 来表示这是一个该类型的数组
var list: number[] = [0, 1, 2, 3];
list.forEach((item, index, array) => {
    console.info(item * 2)
});
//第二种写法使用一种通用的数组类型表示 Array<数组元素类型>
var array: Array<string> = ["Trek", "Merida", "Giant"];
array.forEach((item, index, array) => {
    console.info(`Hello  ${item}`);
});

//Tuple 元组
//元组类型允许表达固定数量的已知类型集合 但这些类型不必相同
var infos: [string, number] = ["Trek", 28];
infos.forEach((item, index, array) => {
    console.info(item);
});
//我们可以使用数字检索(数组下标)检索一个已知类型的 元素
console.info(infos[0].charCodeAt(0))
infos[3] = "Merida";
console.info(infos)
console.info(infos[3].toString())
//当访问的索引超过边界时 将使用联合类型处理
//infos[4]=false;

//Enum枚举
//TypeScript拓展了JavaScript原生的标准数据类型集  增加了枚举类型(enum)枚举是一种很有用的数据类型 它提供了一种给数字类型的值 设置易于辨别的名字的方法
enum Color{
    Red, Green, Blue
}
var c: Color = Color.Green;
console.info(c)

//默认情况下  枚举类型会从数字0开始标记它的元素  我们可以通过人为设置元素的数值来改变默认值 例如设置成从1开始
enum Books{
    "JAVA" = 1,
    "SCRIPT",
    "Spring"
}
var script: Books = Books.SCRIPT;
console.info(script)//2
//我们甚至可以可所有的枚举元素设置数值
enum Bikes{
    "Merida" = 2,
    "Giant" = 4,
    "Trek" = 6,
    "Xds" = 8
}
var bikes: Bikes = Bikes.Xds;
console.info(bikes)
//枚举类型有一个便捷特性 我们也可以直接用数值来查找其对应的枚举元素的名称
var trek: string = Bikes[6];
console.info(trek);

//Any
//当我们编写应用的时候需要描述一些类型不确定的变量  因为这些变量的值可能来源于一些动态的内容 在这种情况下 我们需要略过对于这些变量进行的类型检查
//让它们直接通过编译时的检查  为了实现这一目的 我们可以把它们标识为any类型
var anyType:any[]=[1,"Trek",true,{name:"Name",age:28}];
anyType.forEach((item,index,array)=>{
    console.info(typeof  item);
})

//void
//void就像any的相反面 void就是没有 any就是所有 没有返回值的函数就可以认为是void类型
function warnType():void{
    console.info("This is my warning message!")
}
warnType();

 

posted @ 2017-02-12 16:37  Trek*  阅读(177)  评论(0编辑  收藏  举报