TypeScript之基本数据类型
前言
最近项目很急,所以没有什么时间回答关于Xamarin.Android方面的问题,也有一段时间没有更新。主要是手头很缺人,如果有谁有兴趣
加入我们的话,可以私聊我,这样我就能继续造福社区了,同时还有很多的好的库我也可以开源(兼容MvvmCross)。下面就我学习TypeScript。
工具
大家可以使用VS2013/2015,VS2012可以安装对应的插件,我们直接新建(带TypeScript的HTML应用程序),并在app.ts中进行开发,
如果读者想查看对应生成的js代码可以到项目目录下查看(建议不要把app.js添加到项目,因为那是自动生成的)。
基本数据类型
TypeScript不同于javascript这门弱类型语言,提供了常用的数据类型,这样我们可以编写的时候提供类型检查,这样我们在编写的时候可以当作强类型语言那样,可以避免很多在运行时才能发现的问题。下面我们就学习TypeScript中的数据类型。
Boolean
作为最简单的但也是最常用的就是布尔类型了,只有true和false这两种值,通过下面这段代码我们可以看到TypeScript不同于C#的(bool isDone = false)
这种形式,而是先通过var定义变量,然后在变量后跟上冒号,冒号后面才是真正的类型。如果读者尝试赋给他其他类型变量可以发现进行了类型检查,而也
是作为TypeScript带给我们的好处之一(大家放心我们依然可以使用到原汁原味的javascript下的var)
--TypeScript:
var isDone : boolean = false;
--JavaScript
var isDone = false;
Number
在TypeScript所有的数值都是单精度数值,不存在整数或者其他类型,只有Number。使用惯其他的语言的读者不要苦苦寻觅int,uint,long类型了。
--TypeScript
var height : number = 6;
height = 3.545;
height = -40;
--JavaScript
var height = 6;
height = 3.545;
height = -40;
String
跟其他的语言一样在TypeScript中对应的字符串类型也是String,而我们可以通过("")双引号或者('')单引号将字符串值括起来。
--TypeScript
var name : string = "TypeScript";
name = 'JavaScript';
--JavaScript
var name = "TypeScript";
name = 'JavaScript';
Array
在TypeScript中你可以跟在JavaScript中一样使用数组,在TypeScript中有两种定义数组的方式,其中一个方式就在类型后面跟上([])方括号。
--TypeScript
var list: number[] = [5, 6, 8];
--JavaScript
var list = [5, 6, 8];
另一种方式就是利用Array类型,将类型作为泛型参数传入。
--TypeScript
var list2: Array<number> = [5, 6, 8];
--JavaScript
var list2 = [5, 6, 8];
Enum
相对JavaScript,TypeScript增加了一个有用的基础数据类型,就是枚举。我们可以利用更友好的方式替代纯数字。
--TypeScript
enum Color {
Red,
Green,
Blue
};
var c: Color = Color.Red;
--JavaScript
var Color;
(function (Color) {
Color[Color["Red"] = 0] = "Red";
Color[Color["Green"] = 1] = "Green";
Color[Color["Blue"] = 2] = "Blue";
})(Color || (Color = {})); var c = 0 /* Red */;
我们可以看到枚举默认是从0开始顺序递增的,有过C#基础的人肯定知道可以修改第一个枚举的值从而
让后面的枚举值基础这个值进行递增,比如下面这个写法:
--TypeScript
enum Color {
Red = 1,
Green,
Blue
};
var c: Color = Color.Green;
--JavaScript
var Color;
(function (Color) {
Color[Color["Red"] = 1] = "Red";
Color[Color["Green"] = 2] = "Green";
Color[Color["Blue"] = 3] = "Blue";
})(Color || (Color = {})); var c = 2 /* Green */;
除此之外我们也可以指定每个枚举的值,比如下面这样。
--TypeScript
enum Color {
Red = 1,
Green = 2,
Blue = 4
};
var c: Color = Color.Green;
--JavaScript
var Color;
(function (Color) {
Color[Color["Red"] = 1] = "Red";
Color[Color["Green"] = 2] = "Green";
Color[Color["Blue"] = 4] = "Blue";
})(Color || (Color = {})); var c = 2 /* Green */;
很多时候我们需要获取枚举的字符串形式,而TypeScript不同于C#直接使用ToString方法就可以,
而是需要通过其他方式来获取,比如下面这样。
--TypeScript
var c: Color = Color.Green;
var s: string = Color[c];
--JavaScript
var c = 2 /* Green */;
var s = Color[c];
Any
虽然我们使用了TypeScript,获得了类型检查。但是许多第三方库中的变量不会作为单一类型的值来使用,
为此TypeScript提供了另一种类型,会跳过编译检查,但是我们为此就会失去类型检查。
--TypeScript
var notSure: any = 4;
notSure = "maybe a string instead";
notSure = false; var notSureList: any[] = [1, "fa", false];
notSureList[0] = "das";
--JavaScript
var notSure = 4;
notSure = "maybe a string instead";
notSure = false; var notSureList = [1, "fa", false];
notSureList[0] = "das";
Void
一般这种类型都是用在函数的返回值上,表示该函数没有返回值比如下面这样。
--TypeScript
function warnUser(): void {
alert("This is my warning message.");
}
--JavaScript
function warnUser() {
alert("This is my warning message.");
}
TypeScript之基本数据类型的更多相关文章
- typeScript中的数据类型
/* typeScript中的数据类型 typescript中为了使编写的代码更规范,更有利于维护,增加了类型校验,在typescript中主要给我们提供了以下数据类型 布尔类型(boolean) 数 ...
- TypeScript入门-基本数据类型
▓▓▓▓▓▓ 大致介绍 TypeScript是由C#语言之父Anders Hejlsberg主导开发的一门编程语言,TypeScript本质上是向JavaScript语言添加了可选的静态类型和基于类的 ...
- TypeScript学习笔记—数据类型
TypeScript 数据类型 Boolean 类型 let isDone: boolean = false; // tsc => var isDone = false; Number 类型 l ...
- Typescript基础(1)——数据类型
前言 这是开始学习Typescript的一些笔记,涉及的都是很基础的知识点.大神们请绕路或者欢迎指点.今天开始第一部分数据类型的学习. 数据类型 Typescript中为了使代码编写更加规范,更加易于 ...
- 基本数据类型TypeScript
TypeScript 前言 最近项目很急,所以没有什么时间回答关于Xamarin.Android方面的问题,也有一段时间没有更新.主要是手头很缺人,如果有谁有兴趣加入我们的话,可以私聊我,这样我就能继 ...
- TypeScript基础数据类型
Typescript与Javascript 二者的区别 作为前端开发的基础语言javascript已经深入人心,人人皆知.作为变成入门的最简单语言,Javascript语言以动态.弱类型语言而著名,学 ...
- TypeScript学习笔记(一)环境搭建和数据类型
目录 一.学习TypeScript的缘由 二.学习环境的搭建 1. TypeScript的编译环境 2. vscode自动编译的配置 三.TypeScript中的数据类型 1. 简单变量的定义和初始化 ...
- TypeScript入门
博客园首发,转载请注明出处,多谢支持.http://www.cnblogs.com/xuema/ 一.TypeScript TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaSc ...
- 前端入门25-福音 TypeScript
声明 本篇内容摘抄自以下来源: TypeScript 中文网 只梳理其中部分知识点,更多更详细内容参考官网. 正文-TypeScript 今天来讲讲有 Java 基础转 JavaScript 的福音: ...
随机推荐
- 笔记本win8,mac10.10,ubuntu,android四系统安装
前言,最简单的是win8和ubuntu 最难啃的是mac android版只是要注意一个小技巧,目前算是独创 (被android坑了一次,两块硬件,android版把500Gntfs的硬盘整个识别为一 ...
- Eclipse 在ubuntu桌面显示快捷启动以及解决Eclipse 在ubuntu中点击菜单栏不起作用的原因.
要在Eclipse中设置好之后,可以通过如下方式在周末显示快捷启动以及解决Eclipse在ubuntu高版本中点击菜单栏项不显示列表的问题 在usr/share/app-install/desktop ...
- 第一章 jQuery基础方法回顾
jQuery即JavaScript,它是一个.js文件(官网下载).使用时须将jQuery库的声明写在HTML文档的head标签里. 章节内容: 1.选择DOM节点 2.延迟的JavaScript的执 ...
- whoami与who am i
whoami显示的是当前“操作用户”的用户名,而who am i显示的是“登录用户”的用户名. 若你使用root用户登录,中间su abc切换,whoami的结果是abc,who am i 的结果是r ...
- 20145229&20145316《信息安全系统设计基础》实验一 开发环境的熟悉
实验封面 实验内容 本次实验使用 Redhat Linux 9.0 操作系统环境,安装 ARM-Linux 的开发库及编译器.创建一个新目录,并在其中编写 hello.c 和 Makefile 文件. ...
- 当我我们用new操作符创建对象的时候,都发生了些什么?
//下面这段代码是javascript设计模式与开发实践上的一段代码 function Person( name ){ this.name = name; }; ...
- ES6中的var let const应如何选择
javascript世界里面的每个人都在说有关ECMAScript 6 (ES6,也称作ES 2015)的话题,对象的巨大变化 ( 类 , super() , 等), 函数 (默认参数等), 以及模块 ...
- html5 完整图片上传
<div class="photo" style="display:none;" id="upPhoto"><div cl ...
- js常用的地址栏参数获取
用JS获取地址栏参数的方法(超级简单) 方法一:采用正则表达式获取地址栏参数:( 强烈推荐,既实用又方便!) function GetQueryString(name) { var reg ...
- GPT分区磁盘上优盘安装win10的方法
刚买的acer笔记本安装的是win8,之后硬盘安装升级到win10.今天想格式化安装win10这样自带的软件可以去除,但是nt6 hdd在win10上无法使用,本来想先安装win7再通过nt6 hdd ...