共计 2533 个字符,预计需要花费 7 分钟才能阅读完成。
// ! 根底类型
(() => {
//! 布尔类型
/**
* * let 变量名:数据类型 = 值
*/
let flag: boolean = true;
console.log("flag:", flag);
//! 字符串类型 ----->string
let str: string = "我是一个字符串";
console.log("str:", str);
//! 字符串和数字的拼接
let str1: string = "我有怎么多的";
let num: number = 1000;
console.log(str1 + num);
console.log("============================");
/**
* * null 示意 "没有对象",即该处不应该有值。典型用法是:* *(1)作为函数的参数,示意该函数的参数不是对象。* *(2)作为对象原型链的起点。* * undefined 示意 "短少值",就是此处应该有一个值,然而还没有定义。典型用法是:* *(1)变量被申明了,但没有赋值时,就等于 undefined。* *(2) 调用函数时,应该提供的参数没有提供,该参数等于 undefined。* *(3)对象没有赋值的属性,该属性的值为 undefined。* *(4)函数没有返回值时,默认返回 undefined。*/
let und: undefined = undefined;
let nul: null = null;
console.log("nul:", nul);
console.log("und:", und);
//! undefined 和 null 都能够作为其余类型的子类型
console.log("============================");
//! 数组类型
//? 数组定义 1
// todo let 变量名:数据类型[]=[值 1,值 2]
let arr1: number[] = [1, 2];
console.log("arr1:", arr1);
//? 数组定义 2:数组的泛型
// todo let 变量名:Array< 数据类型 >=[值 1,值 2]
let arr2: Array<number> = [1, 2];
console.log("arr2:", arr2);
//! 元组类型
//? 在定义数组的时候,类型和数据的个数一开始就曾经限定了
let arr3: [string, number, boolean] = ["11", 111.123, true];
console.log("arr3:", arr3);
//* 元组类型在应用的时候,数据的类型的地位和数据的个数,//* 应该在定义元组的时候的数据类型及地位应该是统一的
console.log(arr3[1].toFixed(2)); // 保留两位的小树
console.log("========================");
//! 枚举的类型
/**
* ? 枚举外面的每个数据值都能够叫元素
* ? 每个元素都有本人的编号
* ? 编号是从 0 开始,顺次递增
*/
enum Color {
red,
blue,
green,
}
let color: Color = Color.red;
console.log("color:", color);
console.log(Color[2]);
console.log("++++++++++");
//! any 类型
// * 当一个数组中存储多个数据的时候,个数不确定,类型不确定的时候,用 any 来定义
// let str3: any = 100;
// str3 = "111";
let str3: any = [100, "4154", true];
console.log("str3:", str3);
//! void
// * 代表该函数没有任何的返回值
function name(): void {console.log("llllllll");
}
name();
console.log("========================");
//! object
//*
function getObj(obj: object): object {console.log(obj);
return {
name: "??",
age: 12,
};
}
console.log(getObj({ name: "11", age: 15}));
console.log("========================");
//! 联结类型
//* 示意取值能够为多种类型中的一种
// 定义一个一个函数失去一个数字或字符串值的字符串模式值
function getString(str: number | string): string {return str.toString();
}
console.log("getString:", getString(1221));
//! 类型断言
// 定义一个一个函数失去一个数字或字符串值的长度
//* 通知编译器,我晓得我本人个在干啥
/**
* todo 断言的形式 1:< 类型名 > 变量名
* todo 断言的形式 2:值 as 类型
*/
// function getS(str: number | string) {// if ((<string>str).length) {// return (<string>str).length;
// } else {// return str.toString().length;
// }
// }
function getS(str: number | string) {if ((str as string).length) {return (str as string).length;
} else {return str.toString().length;
}
}
console.log("getS:", getS(12));
console.log("getS:", getS("451"));
console.log("========================");
//! 类型推断
//* 在没有明确指定类型的时候推断出一个类型
// let text = 100; // 数字类型
// console.log(text);
let text; // 断言为 any
text = 100;
text = "454";
console.log("text:", text);
})();
倡议应用 VSCode 查看代码
如果 VSCode 装置了 Better Comments 正文会看的更分明
正文完