TypeScript笔记

TypeScript 遵循强类型,如果将不同的类型赋值给变量会编译错误

any 任意

number 64位浮点,可以表示整数和分数

string 字符串,``反引号定义多行文本和内嵌表达式

boolean

数组[]

元组[type]已知元素数量和类型的数组,如果存储的元素数据类型不同,则需要使用元组。

enum

void

null 缺失

undefined 未定义

Null 和 Undefined 是其他任何类型(包括 void)的子类型,可以赋值给其它类型

null 和 undefined 只能被赋值给 void 或本身对应的类型

如果一个类型可能出现 null 或 undefined, 可以用 | 来支持多种类型

let x: number | null | undefined;

never 其他类型

never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。这意味着声明为 never 类型的变量只能被 never 类型所赋值,在函数中它通常表现为抛出异常或无法执行到终止点(例如无限循环)

声明变量

var [变量名] : [类型] = 值;

声明变量的类型,但没有初始值,变量值会设置为 undefined

声明变量并初始值,但不设置类型类型,该变量可以是任意类型

变量不要使用 name 否则会与 DOM 中的全局 window 对象下的 name 属性出现了重名。

<类型>值 / 值 as 类型

类型断言,之所以不被称为类型转换,是因为转换通常意味着某种运行时的支持。但是,类型断言纯粹是一个编译时语法

当类型没有给出时,TypeScript 编译器利用类型推断来推断类型。类型推断成功后就固定了,再赋不同类型就会报错

运算符没什么变化

var的作用域是函数作用域

let的作用域是块级作用域

switch 整数或枚举,break不必须,不加就继续执行后面的case

for(j in n) j需要为 string 或 any 类型

for...of 允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构等

list.forEach((val, idx, array) => { // val: 当前值 // idx:当前index // array: Array }) 无法break 用list.every代替

函数定义

function function_name(param1 [:datatype]= default_value, param2? [:datatype]):return_type { 
    // 语句
    return value; 
}

问号为可选参数,必须最后

...restOfName: string[] 以...为前缀的,它将成为一个由剩余参数组成的数组

我们可以将匿名函数赋值给一个变量,这种表达式就成为函数表达式。

var res = function( [arguments] ) { ... }

内置构造函数

var myFunction = new Function("a", "b", "return a * b");

var arr:number[] = [12,13] var[x,y] = arr // 将数组的两个元素赋值给变量 x 和 y

接口中我们可以将数组的索引值和元素设置为不同类型,索引值可以是数字或字符串。

interface ages { [index:string]:number }

extends继承,不支持多继承

super 父类

三种访问修饰符 public private protect

对象

var sites = {

site1: "Runoob",

site2: "Google",

sayHello: function () { } // 类型模板

};

sites.sayHello = function () { console.log("hello " + sites.site1); };

sites.sayHello();

对象也可以作为一个参数传递给函数

var sites = { site1:"Runoob", site2:"Google", };

var invokesites = function(obj: { site1:string, site2 :string }) {

console.log("site1 :"+obj.site1) ;

console.log("site2 :"+obj.site2) ;

}

invokesites(sites)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值