TS 基础数据类型
1.基础数据类型
Boolean布尔值 Number数字 String字符串 Array数组 Tuple元组 Enum枚举 Any void
Boolean布尔值:true/false eg:var isDone: boolean = false;
Number数字:
eg:
var decLiteral: number = 6;
var hexLiteral: number = 0x9837abdef;
var binaryLiteral: number = 0b0010;
var octalLiteral: number = 0o74563;
String字符串
eg:
var name: string = "bob";
name = 'smith';
也可以使用 模板字符串,他能支持多行文本和内嵌表达式。这些字符串使用单引号(`)包围,并且嵌入的表达式使用${ expr }这样的形式表示。
var name:string = "Gene";
var age: number = 37;
var sentence: string='Hello,my name is ${name}.I will be ${$age +1} years old next month.' 上面的表达式相当于下面的声明方式:
var sentence:strring = "Hello ,my name is " +name + ".\n\n" + " I will be " + (age +1) +" years old next month." Array数组
两种写法:
1.数组元素后面添加[],来表示这是一个该类型的数组:
var list: number[] = [1,2,3]; 2.通用数组类型表示,Array<数组元素类型>
var list: Array<number> = [1,2,3]; Tuple元组:
元组数据类型允许表达固定数量的已知类型集合,但是这些类型不必是相同的。
eg: var x: [string,number]; //声明一个元组类型
x = ["hello",10]; //初始化 使用数字检索一个已知元素: console.log(x[0].substr(1));
档访问超过边界时,将使用联合类型处理:
x[3] = "world";
console.log(x[5].toString());
Enum枚举
enum Color {Red,Green,Blue};
var c: Color = Color.Green;
枚举类型可以直接用数值来查找其对应的枚举元素的名称。
enum Color {Red = 1,Green,Blue};
var colorName:string = Color[2];
alert(colorName);
Any
当我们编写应用时,我们可能会需要描述一些类型不明确的变量。因为这些变量的值可能来源于一些动态的内容,如用户或第三方提供的库。在这种情况下,我们需要略过对这些变量进行的类型检查,让它们直接通过编译时的检查。为了实现这一目的,我们可以把它们标识为'any'类型
var notSure:any = 4;
notSure = "maybe a string instead";
notSure = false;
var notSure: any = 4;
notSure.ifItExists(); // 没问题,在运行时有可能有 ifItExists 这个方法
notSure.toFixed(); // 没问题,toFixed 是真实存在的方法 (但是编译器不会验证准确性)
var prettySure: Object = 4;
prettySure.toFixed(); // 错误,不行就是不行了,使用any吧
var list:any[] = [1,true,"free"];
list[1] = 100;
void
function warnUser():void{
alert("This is my warning message")
}
不建议声明一个变量是 void类型,因为这个变量就只能赋值undefined 或 null。
var unusable: void = undefined;
TS 基础数据类型的更多相关文章
- 《前端之路》 - 初试 TypeScript(一)基础数据类型
一.先讲讲 TypeScript 什么是 typeScript ? typeScript 是 Javascript 的超集 我们用一张图来简单介绍下 ts 和 js 清清楚楚明明白白的关系- 为什么会 ...
- TypeScript——02——TS基本数据类型介绍和使用
一,TS的数据类型 ES6的数据类型: 6种基本数据类型 Boolean Number String Symbol undefined null 3种引用类型 Array Function Objec ...
- TS基础应用 & Hook中的TS
说在前面 本文难度偏中下,涉及到的点大多为如何在项目中合理应用ts,小部分会涉及一些原理,受众面较广,有无TS基础均可放心食用. **>>>> 阅完本文,您可能会收获到< ...
- [.net 面向对象编程基础] (3) 基础中的基础——数据类型
[.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...
- TypeScript学习指南第一章--基础数据类型(Basic Types)
基础数据类型(Basic Types) 为了搭建应用程序,我们需要使用一些基础数据类型比如:numbers,strings,structures,boolean等等. 在TypeScript中除了Ja ...
- 【Swift】学习笔记(一)——熟知 基础数据类型,编码风格,元组,主张
自从苹果宣布swift之后,我一直想了解,他一直没有能够把它的正式学习,从今天开始,我会用我的博客来驱动swift得知,据我们了解还快. 1.定义变量和常量 var 定义变量,let定义常量. 比如 ...
- 二、Windows基础数据类型
六.Windows Data Types 简介: 6.1.这些数据类型都是C语言数据类型的再次的进行包装. 6.2.因为考虑到如果使用的是C中的基础数据类型可能无法表示,想表示的精准的含义. 6.3. ...
- java基础数据类型包装类
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- java.lang基础数据类型boolean、char、byte、short、int、long、float、double (JDK1.8)
java.lang.Boolean public static int hashCode(boolean value) { return value ? 1231 : 1237; } JDK 1.8新 ...
随机推荐
- ftp/sftp定时自动上传文件脚本(CentOS)
1.ftp自动上传文件脚本 #!/bin/bash ftp -n<<! open 192.168.220.129 user ls toor binary hash cd /path/to/ ...
- Java技巧之双括弧初始化
由于Java语言的集合框架中(collections, 如list, map, set等)没有提供任何简便的语法结构,这使得在建立常量集合时的工作非常繁索.每次建立时我们都要做: 定义一个临时的集合类 ...
- AMR文件结构
转自:http://blog.csdn.net/dinggo/article/details/1966444 https://blog.csdn.net/wlsfling/article/detail ...
- linux系统监控与硬盘分区/格式化/文件系统管理
1.系统监控 1) 系统监视和进程控制的工具----> Top 与 free 类似于windows的资源管理器. 进程运行的三种状态: tips: 进程(Process)是计 ...
- day24-python操作数据库四
#!/usr/bin/env python # -*- coding:utf-8 -*- # @time: 2017/11/23 23:10 # Author: caicai # @File: dem ...
- vue-router-6-命名视图
//展示多个视图<router-view class="view one"></router-view> <router-view class=&qu ...
- 《Python》线程池、携程
一.线程池(concurrent.futures模块) #1 介绍 concurrent.futures模块提供了高度封装的异步调用接口 ThreadPoolExecutor:线程池,提供异步调用 P ...
- Linux如何从零开始搭建nfs服务器(centOS6)
Server端 1.打印系统版本 cat /etc/redhat-release uname -r uname -m 2.检查是否安装NFS服务 rpm -aq nfs-utils rpcbind L ...
- 什么是XP
极限编程(XP)是敏捷过程中最富盛名的一个.下述这些特点使得敏捷过程能够较好地适应商业竞争环境下对小型项目提出的有效资源和有限开发时间的约束. 极限编程的有效实践 极限编程的整体开发过程 极限编程的迭 ...
- JavaWeb基础-认识JavaWeb
程序开发体系 B/S 浏览器/服务器 开发维护成本低 客户端负载低 安全性低 C/S 客户端/服务器 成本高 客户端负载高 安全性高 javaweb简介 静态网页 HTML CSS,人浏览的数据是始终 ...