1,ts是什么
TypeScript 是 JavaScript 的超集,这意味着它可以完成 JavaScript 所做的所有事情,而且额外附带了一些能力。
Typed JavaScript at Any Scale. 它强调了 TypeScript 的两个最重要的特性——类型系统、适用于任何规模。
JavaScript 本身是一种动态类型语言,这意味着变量可以改变类型。从 TypeScript 的名字就可以看出来,「类型」是其最核心的特性。
使用 TypeScript 的主要原因是就是为了给 JavaScript 添加静态类型。静态类型意味着变量的类型在程序中的任何时候都不能改变。
2,TS基础
数据类型
javascript有七种原始数据类型,布尔值、数值、字符串、null、undefined 以及 ES6 中的新类型 Symbol 和 ES10 中的新类型 BigInt
就是再原始js变量上面增加个类型 这是基本类型
let 变量名 : 数据类型 = 值
let isFlag: boolean = false; //布尔值
let name: string= '景天';
let age: number = 6;
数组
数组也是没有太大区别的,只是加了类型
写法1: let 变量名 : 数据类型[] = [值1,值2,值3]
写法2: let 变量名 : Array<数据类型> = [值1,值2,值3]
1 // 数组 2 let lists: number[] = [1, 2, 3, 4, 5] // 如果此处没有写数值类型,而是别的,会直接报错,其他的写法也类似,前面定义了类型后面写的类型不对就会报类似的错误 不能将类型“string”分配给类型“number”。 3 // console.log(lists, '1, 2, 3, 4, 5') 4 5 let listString: string[] = ['1', '2'] 6 // console.log(listString, "'1', '2'") 7 let listArray1: Array<number> = [1,2,3,4,5]let lsitArray2: Array<number | string> = [1, 2, '2']
8 let listObj: object[] = [ 9 { name: '张三', age: 6 }, 10 { name: '李四', age: '9999' } 11 ] 12 // console.log(listObj, '=============') 13 // 这里的any 表示可以是任意类型,(有人说在ts代码中全部写any就成了js) 14 let listany: any[] = [1, '2', false, {}, function () { 15 return false 16 }] 17 // console.log(listany, '=============') 18 // 这里的代码表示可以是多个类型,不一定是单一的。也不需要按照对应的位置,比如说我先写的 number ,数组的索引0就必须是number类型,这是错误的 19 let listSome: (number | string | boolean | Function | object)[] = [1, '2', false, {}, function () { 20 return false 21 }] 22 listSome.push(NaN) 23 // console.log(listSome, '=============')
元组
元组概念在js中是没有的,一个新的概念
对象,
函数
标签:console,log,TS,number,学习,let,类型,false,随笔 From: https://www.cnblogs.com/jickma/p/18025212