1. 定义变量
// 将b赋值为 hello,只能是 hello或者 wowrld
let b : "hello" | "world"

// 设置变量c只能为number 或者string类型
let c: number | string
c = 'true'

// 显式和隐式 any, 如果
let d : any
let e
如果不确定类型那么最好用unknown
let f : unknown
// 将 类型未unknown的值赋值给 string的值的时候,需要进行类型判断,否则会报错
let g : string
if( typeof f === 'string') {
g = f
}
// 类型断言,告诉解析器变量的实际类型
g = f as string
g = <string>f
'
// 必须有name属性
let c2 : {name: string, [propName: string]: any}

// 定义一个e2, 希望有两个参数,一个是number类型一个是string,返回值是一个string类型
// 设置函数的结构类型声明
let e2 : (a:number, b : string) => string
e2 = function(a: number, b: string) {
return a + b
}
console.log(e2(1, 'numberdsfd'));

// 声明 number类型的数组
let f2 : Array<number>
f2 = [1, 2, 3]
console.log(f2);

// 元祖就是固定长度的数组
let h2 : [string, number]
h2 = ['22', 122]0

2. 类
属性
class Person{
// 实例属性。只有new 了实例后才能访问到属性。
name: string = 'cjk';
age : number = 12
// 类属性, 通过Person.age 直接访问。可以使用static 创建静态属性
static car: string = '宝马'
// 实例属性可以随便更改,但是类属性是固定的。
}
在构造函数中,this指向当前实例,谁创建的this就是指向谁

最新文章

  1. javascript之Object.defineProperty的奥妙
  2. JS学习:第二周——NO.1回调函数
  3. 经典排序算法 – 插入排序Insertion sort
  4. 【问题】AndroidStudio导入项目一直卡在Building gradle project infod的最快速解决方案
  5. word to word
  6. ubuntu 下使用 putty 调试
  7. 读《程序员的SQL金典》[3]--表连接、子查询
  8. IOS 杂笔- 6(KVC-KVO)
  9. WEB安全--渗透笔记
  10. 判断一个数据是否存在于一个表中,Oracle中写自定义函数
  11. php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
  12. 登陆用户怎样获取验证码和保存用户到cookie中
  13. 利用CMake自己创建OpenCV静态链接库
  14. Robotium--scroll操作系列
  15. HTTP相关整理(上)
  16. 01 深入理解JVM的内存区域
  17. SQL Server 实现递归查询
  18. 查找所有sphinx引擎表并生成创建表的语句
  19. windows下Graphviz安装及入门教程
  20. Practical Node.js (2018版) 第8章:Building Node.js REST API Servers

热门文章

  1. Mac下vscode编辑器设置
  2. ASCLL编码器-算术运算符_四则与取模运算
  3. 理论+实践,教你如何使用Nginx实现限流
  4. KingbaseES数据库备份初始化错误处理
  5. win10使用python自动化安装mysql8.0.11
  6. Netty进阶
  7. 固定SRAM地址变量
  8. Element ui &amp;多选框、输入框、下拉框、开关、上传文件
  9. Hugging Face 每周速递: 扩散模型课程完成中文翻译,有个据说可以教 ChatGPT 看图的模型开源了
  10. 如何将项目打包成apk或exe程序