TypeScript基础知识

一、TypeScript的变量

1.变量声明

TypeScript在JavaScript的基础上加入了静态类型检查功能,因此每一个变量都有固定的数据类型。

1 let msg: string = 'hello world'

 let声明变量的关键字,const则代表常量;msg是变量名,自定义的;string是变量的数据类型。

2.更多数据类型声明

let msg: string = 'hello world'
let age: number = 21
let finished: boolean = true
字符串、数值、布尔类型声明

string是字符串类型,可以用单引号或者双引号赋值;number是数值类型,值可以是整数,浮点数。

 let a:any = 'jiack
a = 21'

any是不确定类型,赋的值可以是任意类型,在执行过程中不对其进行数据类型的检测。

let u: string|number|boolean = 'rose'
u = 18

此为union,是联合类型,可以是多个指定类型中的一中。和any在函数中使用的较多,因为函数中一旦对数据进行了固定后,后限制参数的类型从而降低函数的灵活性。

let p = {name: 'jack',age: 21}

//拿到输出值,常用
console.log(p.name)
//或者第二种方法拿到输出值
console.log(p['name'])

Object对象类型

//数组声明方式一
let names: Array<string> = ['Jack','Rose']
//数组声明方式二
let ages: number[] = [21,18]

//访问数组内数据,根据下标来选
console.log(names[0])

Array是数组类型,元素可以是任意其他类型

     

二、TypeScript的条件控制

   

1.if....else

Typescript与大多数开发语言类似,支持基于if....else和switch的条件控制。

复制代码
 1 //定义数字
 2 let num:number = 21
 3 
 4 
 5 //案例一判断是否是偶数
 6 if(num % 2 ===0){
 7 
 8   console.log(num + '是偶数')
 9 }else{
10 
11  console.log(num + '是奇数')
12 
13 }
14 
15 //案例二判断是否是正数
16 if(num > 0){
17  console.log(num + '是正数')
18 }else if(num < 0){
19  console.log(num + '是负数')
20 }else{
21  console.log(num + '为0')
22 }
if....else判断示例
复制代码

在TypeScript中,空字符串、数字0、null、undefined都被认为是false,其他值则为true。

if(num){

   //num非空,可以执行此处逻辑
}

2.switch

复制代码
 1 //定义成绩
 2 let grade: string = 'A'
 3 
 4 switch(grade){
 5 
 6   case 'A' :{
 7     console.log('优秀')
 8     break
 9     }
10  
11   case'B' :{
12 
13    console.log('合格')
14    break
15    }
16 
17  case'C' :{
18 
19    console.log('不合格')
20    break
21    }
22 
23 //结果不是上面这几个的话,运行下面输出
24  defaule :{
25  console.log('非法输入')
26   break
27     }
28 }
switch代码示例
复制代码

 

三、TypeScript的循环迭代

1.for和while

复制代码
 1 //普通for
 2 for(let i = 1; i <=10; i++){
 3 console.log('点赞'+i+'次')
 4 
 5 }
 6 
 7 
 8 
 9 //普通while
10 let i = 1;
11 while(i <=10){
12 console.log('点赞'+i+'次')
13 i++
14 
15 }
for和while的循环
复制代码

Typescript支持for和while循环。

复制代码
 1 //定义数组
 2 let names: string[] = ['Jack','Rose']
 3 
 4 //for in 迭代器,遍历得到数组角标
 5 for(const i in names){
 6   console.log.log(i + ':' name[i])
 7 }
 8 
 9 //for of 迭代器,直接得到元素
10 for(const name of names){
11   console.log(name)
12 }
for的迭代器
复制代码

Typescript为一些内置类型如Array等提供了快捷迭代语法。

         

四、TypeScript的函数

1.函数

复制代码
 1 //无返回值函数,返回值void可以省略
 2 function sayHello(name: string): void{
 3   console.log('你好,' + name + '!')
 4 }
 5 
 6 sayHello('jack')
 7 
 8 //有返回值函数
 9 function sum(x: number,y: number):number{
10    return x+y
11 }
12 
13 let result = (21,18)
14 cosole.log('21 + 18 =' + resule)
15 
16 
17 //更改为箭头函数
18 let sayHi = (name: string) =>{
19   console.log('你好,' + name + '!')
20 }
21 sayHi('Rose')
function函数
复制代码

TypeScript通常利用function关键字声明函数,并且支持可选参数,默认参数,箭头函数等特殊语法。

复制代码
1 //可选参数,在参数名后加?,表示该参数是可选的
2 function sayHello(name?: string){
3 //判断name是否有值,如果无值则给一个默认值(三元运算)
4   name = name ? name : '陌生人'
5   console.log('你好,' + name + '!')
6 }
7 
8 sayHello('Jack')
9 sayHello()
函数的可选参数
复制代码
复制代码
1 //参数默认值,在参数后面赋值,表示参数默认值
2 //如果调用者没有传参,则使用默认值
3 
4 function sayHello(name: string = '陌生人'){
5   console.log('你好,' + name + '!')
6 }
7 
8 sayHello('Jack')
9 sayHello()
函数的默认参数
复制代码

 

posted @   陈永腾  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示