一.类型推论概述

  1. //传统写法
  2. let age: number = 18;
  3. function add(num1: number,num2: number):number{
  4. return num1 + num2;
  5. }
  6. //使用类型推论
  7. let age = 18;
  8. function add(num1: number,num2: number){
  9. return num1 + num2;
  10. }
  11. //相当于ts保留了js的推论能力

二.类型断言

  1. //传统方法无法获取a标签的跳转信息
  2. //原因:HTMLElement属性上只有HTML公共的方法,没有href的信息
  3. <a href="http://www.daidu.com/" id="link">百度</a>
  4. const aLink = document.getElementById('link')
  5. aLink.href //err:类型“HTMLElement”上不存在属性“href”
  6. //使用类型断言指定更加具体的类型
  7. <a href="http://www.daidu.com/" id="link">百度</a>
  8. const aLink = document.getElementById('link') as HTMLAnchorElement
  9. aLink.href //可以访问
  10. //这时类型变成了HTMLAnchorElement,包含了a标签的属性