当前位置: 首页 > article >正文

typescript基础入门

在官网的页页https://www.typescriptlang.org/可以调试。
在这里插入图片描述

#类型推断
let str: string  = 'abc'

let str1: string
str1='a'

#数组及类型断言

let numArr = [1, 2, 3]

const result = numArr.find(item => item >2) as number

result * 5

#基础类型和联合类

let v1: string = 'abc'
let v2: number = 10
let v3: boolean = true
let nu: null = null
let un: undefined = undefined
let v4: string | null = null;
let v5: 1 | 2 |3 = 2


#数组、元组、枚举
let arr: number[] = [1, 2, 3]
let arr1: Array<string> = ['a','b','c']

/*元组*/
let t1: [number,string,number] = [1,'a',2]
t1[0]=1

let t2: [number,string,number? ] = [1,'a']

/*枚举*/
/*下面其实是键、值共6个 
A 0
B 1
C 2
*/
enum MyEnum {
    A,
    B,
    C
}

console.log("=====================")
console.log(MyEnum[0])
console.log("---------------------")
console.log(MyEnum.A)
console.log(MyEnum.B)
console.log(MyEnum.C)


[LOG]: "=====================" 
[LOG]: "A" 
[LOG]: "---------------------" 
[LOG]: 0 
[LOG]: 1 
[LOG]: 2 

/*编译成js*/
"use strict";
var MyEnum;
(function (MyEnum) {
    MyEnum[MyEnum["A"] = 0] = "A";
    MyEnum[MyEnum["B"] = 1] = "B";
    MyEnum[MyEnum["C"] = 2] = "C";
})(MyEnum || (MyEnum = {}));
console.log("=====================");
console.log(MyEnum[0]);
console.log("---------------------");
console.log(MyEnum.A);
console.log(MyEnum.B);
console.log(MyEnum.C);



#函数、参数

function MyFn (a:number ,b: number) :number {
	return  a+b
}



function MyFn2 (a:number ,b: string ) : void {
	let x:number  =  100
}


function MyFn3 (a = 10 ,b: string ,c?:boolean,...rest: number[]) : number {
	return 100
}

const f = MyFn3(20,'abc',true,1,2,3,4,5,6)



#接口

interface Obj {
    name: string,
    age: number
}


const obj:Obj = {
    name:"a",
    age:10
}

const obj2:Obj = {
    name:"b",
    age:11
}


#类型

let a1: string | number = 10

type MyUserName = string | number

let a: MyUserName = 10
let b: MyUserName = 'abc'

#泛型


function myFn(a: number,b: number): number [] {
	return [a,b]
}


function myFn2<T>(a: T,b: T): T [] {
	return [a,b]
}

myFn2<number> (1,2)
myFn2<string> ('a','b')

/*类型推断*/
myFn2('a','b')

http://www.kler.cn/a/410670.html

相关文章:

  • Redis Key 命名规范文档
  • python学习笔记(10)算法(3)列表
  • 国土安全部发布关键基础设施安全人工智能框架
  • 2024-11-21 学习人工智能的Day29 初见深度学习
  • vue2使用el-checkbox不能选中,解决方法
  • ES部署集群与可视化
  • 卷积篇 | YOLOv8改进之引入基于小波变换的新型卷积WTConv | ECCV 2024
  • 基于SSM的校园订餐管理系统
  • 寻找用户推荐人(考点:ifnull)【SQL+Pandas】
  • 002 MATLAB语言基础
  • Pytorch使用手册-Tensors(专题二)
  • 【人工智能基础】自然语言处理基础
  • IDEA2024如何创建Web项目以及配置Tomcat
  • ssm185大学学术交流论坛+vue(论文+源码)_kaic
  • 刷题——字符串中的单词数(力扣)
  • 使用Java代码操作Kafka(五):Kafka消费 offset API,包含指定 Offset 消费以及指定时间消费
  • unsloth vlm模型Qwen2-VL、Llama 3.2 Vision微调案例
  • 基于LLaMA完成第一个微调
  • skywalking es查询整理
  • 【Axure高保真原型】或和且条件