ts 详解

ts简介

ts 全称是 TypeScript
TypeScript 可以理解为是 JavaScript 的扩展,扩展了 js 的语法,因此我们可以在 ts 中继续写 js 的代码而不回报错

TypeScript 又叫做静态的 JavaScript,不能直接引入到 html 中,不能直接被浏览器识别,需要经过 ts 转换器或者是 babel 转化后才能使用

如何理解静态语言和动态语言

类型系统按照类型检查的时机来分类,分为动态类型和静态类型,动态是在运行时候才检查数据类型,静态是在编译时候检查数据类型

1 静态语言是在编译期间就会做数据类型的检查,也就是要在写代码的时候就声明变量的数据类型。大部分的后台语言比如 java,php 等以及我们要学的 ts 都是静态的。
2 动态语言是指在运行期间才会去做类型检查的语言,也就是说动态语言声明的时候不需要指定数据类型。比如 javascript 和 python 都是动态的。

列子说明

//单属性
let a:Number=18
let b:symbol=Symbol()
console.log(b,"asdasd");
let c:number=15

//单属性多类型
let timer:null|number=null
type s =string
const ss:s='abc'

//数组两种方式
let numArr:number[]=[1,2,3]
let strArr:Array<string>=['1','2','3']
//函数
function add(a:string,b:number):any{
    return a+b
}
//箭头函数
const fun=(a:number=1,b:number=1):any=>{
    return a+b
}
fun(1,1)
//函数简写
type Fn=(ni:number,n2:number)=>number
const fun3:Fn=(a,b)=>{
    return a+b
}
//可选参数
function fun8( a?:number,b?:number){
    console.log(111);  
}
function fun88( a:number,b:number){
    console.log(111);  
}
fun8()
fun8(1,2)
fun8(1,2)


// 对象   
// const 对象名: {
//     属性名1:类型1,
//     属性名2?:类型2,
//     方法名1(形参1: 类型1,形参2: 类型2): 返回值类型,
//     方法名2:(形参1: 类型1,形参2: 类型2) => 返回值类型
//   } = { 属性名1: 值1,属性名2:值2  }
//l类型别名Type

type obj={
    a:string,
    b?:number,
    fun10():void
}
let obj1:obj={
    a:'1',
    b:18,
    fun10(){}
}

//两种形式描述对象 1:类型别名 type   2:接口 interface

//interface声明接口
interface obj2{
    name:string,
    price:number,
    fun11:()=>string
}
//利用声明得接口名称作为变量的名称
const good1:obj2={
    name:'1',
    price:200,
    fun11:function(){
        return '1'
    }

}
const good2:obj2={
    name:'1',
    price:200,
    fun11:function(){
        return '1'
    }

}

//接口得继承
//注意:在日常开发中   如果两个接口之间又相同得属性或者方法,可以将(公共得属性或者方法抽离出来,通过继承extends实现复用)语法:
 interface obj3{
    a:number,
    b:number,
 }
//  interface obj4{
//      a:number,
//      b:number,
//      c:number
//  }

//obj4利用继承

interface obj4 extends obj3{
    c:number
}//这样obj4就用了obj3得属性或者方法(obj4用 a b c 三个属性)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值