TypeScript 第一天,认识TypeScript

简单来说,TypeScript 是 JavaScript 的一个超集,它扩展了 JavaScript 的语法。 TypeScript 是 JavaScript 的一个超集,它扩展了 JavaScript 的语法。TypeScript 允许我们使用 JavaScript 的语法,但是 TypeScript 会检查我们的代码,并确保它是有效的 JavaScript。 下面我们就来认识一下 TypeScript。

安装TypeScript

我们可以使用 npm 安装 TypeScript。

复制代码
npm install -g typescript

编译TypeScript代码

我们可以使用 TypeScript 编译器将 TypeScript 代码编译为 JavaScript 代码。

复制代码
tsc hello.ts

这将在当前目录中创建一个 hello.js 文件。

定义变量

在 TypeScript 中,我们可以定义变量并指定它们的类型。

ini 复制代码
let message: string = 'Hello, TypeScript!';

在这个例子中,我们定义了一个字符串变量 message,并将其类型指定为 string。 在 TypeScript 代码中,我们可以使用.ts后缀作为文件的扩展名。如下图所示:

在我们的JavaScript中,需要变量的值可以是任意类型,在日常的使用中很容易出现类型不一致导致的系统报错,TypeScript可以为我们限定Javascript变量的值类型,如下所示:

TypeScript 复制代码
let s:string;
s = "aaa";
s = "bbb";
s = 234;  //此类型会报错

因为在TypeScript中如果我们定义了变量的类型,那么就不能改变变量的类型,需要其他类型可以重新声明新变量。 假如我们在TypeScript中直接在定义变量的时候就给该变量赋值,那么这个变量类型默认就是定义的时候赋的值类型,比如下面例子:

TypeScript 复制代码
let s = "aaa"
s = "bbb";
s = 234; // 此类型会报错
console.log(s);

还有需要注意的是,我们这里在ts文件中使用let定义的变量,转换到js文件中,都会变成var定义变量,这是因为我们的Typescript默认转化的js版本是Javascript3.

TypeScript中使用方法

在我们的Javascript中方法是如下定义的:

javascript 复制代码
function num_sum(a,b){
    return a+b;
}

上面方法中我们的本意都是用来进行数字加减的,但是接口返回的数据大部分都是字符串,稍不注意就变成了类似:123+'456'这样的,但是本意我们肯定是要求两个数字之和,但是结果却是123456.这显然是不符合逻辑的,所以TypeScript来了,我们来看他里面是如何定义方法的,如下:

TypeScript 复制代码
function num_sum(a:number,b:number):number{
    return a+b;
}

上面,我们不仅定义了入参的数据类型,也限定了返回的类型值,都是number;以上就是我们在TypeScript中如何定义方法,这样使我们逻辑更加严谨了。

好了,今天就先写到这里,明天我们详细写写TypeScript中的类型。

感谢大家观看,我们下次见

相关推荐
天平4 小时前
油猴脚本创建webworker踩坑记录
前端·javascript·typescript
ch_09182 天前
从0构建SDK第3节:实现 ReActAgent 的推理与行动循环
typescript·llm·agent
疯狂的魔鬼2 天前
一套 Schema 驱动四视图:记 useCrudSchemas 的设计与实践
前端·javascript·typescript
kyriewen4 天前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
妙码生花5 天前
现代前端的极致性能 icon 加载方案(死磕成功版)
前端·vue.js·typescript
MonkeyKing5 天前
鸿蒙ArkTS深度剖析:ArkTS与TS/JS核心差异、静态强类型实战优势
typescript·harmonyos
Momo__7 天前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
Awu12278 天前
⚡从零开发 Agent CLI(四):给 CLI 装上"LLM 引擎"
typescript·ai编程·claude
假如让我当三天老蒯9 天前
TypeScript 继续学习(学习用)
前端·面试·typescript
糖拌西瓜皮10 天前
Node.js工程化实践:包管理、TypeScript配置与代码质量
typescript·node.js