TypeScript入门1:注释、变量常量、数据类型、函数

console.log('hi ts');


//声明变量
let a: number = 10;
//声明常量
const b: number = 20;
// 类型推断:如果⼀个变量或常量的声明包含了初始值,TS便可以根据初始值进⾏类型推断,此时可以不显式指定其类型
let c = 60;
console.log(typeof c); //number


// 数字类型:整数和浮点数、整数和负数
let a1: number = 100;
let a2: number = -100;
let a3: number = 3.5;
let a4: number = -3.5;


// 字符串类型
let s1: string = 'hello';
let s2: string = "你好";


// 布尔类型
let b1: boolean = true;
let b2: boolean = false;


// 数组
let arr1: number[] = [1, 2, 3];
let arr2: string[] = ['1', '2', '3'];
let arr3: number[] = [];


// 对象
let person: {name: string, age: number} = {
    name: '张三',
    age: 18
}


// 函数
/**
 * 函数add: 计算并返回两个数字的和。
 * @param x {number} 第一个加数。
 * @param y {number} 第二个加数。
 * @returns {number} 两个数字的和。
 */
 function add(x: number, y: number): number {
  return x + y; // 返回x和y的和
}


//可选参数?:调⽤函数时,未传递可选参数,则该参数的值为 undefined
function getPersonInfo(name: string, age: number, gender?: string): string {
  if (gender === undefined) {
    gender = '未知'
  }
  return `name:${name},age:${age},gender:${gender}`;
}
let p1 = getPersonInfo('zhagnsan', 10, '男')
let p2 = getPersonInfo('lisi', 15);
console.log(p1);
console.log(p2);


//参数默认值
function getPersonInfo2(name: string, age: number, gender: string='未知'): string {
  return `name:${name},age:${age},gender:${gender}`;
}
let p3 = getPersonInfo2('zhagnsan', 10, '男')
let p4 = getPersonInfo2('lisi', 15);
console.log(p3);
console.log(p4);


//联合类型|:⼀个函数可能⽤于处理不同类型的值,这种情况可以使⽤联合类型
function printNumberOrString(message: number | string) {
  console.log(message)
}
printNumberOrString('a')
printNumberOrString(1)


//任意类型any
function print(message:any) {
  console.log(message)
}
print('aa')
print(11)
print(true)
print(person)

//空返回值void:若函数没有返回值,则可以使⽤ void 作为返回值类型,其含义为空
function test(): void {
  console.log('hello');
}


//返回值类型推断:函数的返回值类型可根据函数内容推断出来时,可以省略不写。
function test2() {
  //TS自动推断为void
  console.log('hello');
}
function sum2(a: number, b: number) {
  //TS自动推断为number
  return a + b;
}



//匿名函数:适⽤于简单且仅需⼀次性使⽤的场景。匿名函数能够根据上下⽂推断出参数类型,因此参数类型可以省略
let arr4: number[] = [77, 88, 99];
arr4.forEach(function(item) {
  console.log(item);
})


//lambda箭头函数:数的语法还可以进⼀步的简化,只保留参数列表和函数体两个核⼼部分,两者⽤ => 符号连接
arr4.forEach((item) => { console.log(item); })
arr4.forEach(item => console.log(item))
posted @ 2024-04-30 13:53  yub4by  阅读(9)  评论(0编辑  收藏  举报