TypeScript 教程

浏览6968
更新时间2025-08-12

使用 as 进行类型转换

一种直接的类型转换方法是使用 as 关键字,这将直接改变给定变量的类型。

实例

let x: unknown = 'hello';
console.log((x as string).length);

类型转换实际上并不会改变变量内部数据的类型,例如,以下代码将无法按预期工作,因为变量 x 仍然包含一个数字。

let x: unknown = 4;
console.log((x as string).length); // 打印 undefined,因为数字没有长度

TypeScript 仍然会尝试进行类型检查以防止看似不正确的类型转换,例如,以下将抛出类型错误,因为 TypeScript 知道在不转换数据的情况下,将字符串转换为数字是没有意义的:

console.log((4 as string).length);
// 错误:将类型“number”转换为类型“string”可能是一个错误,因为两种类型之间没有足够的重叠。如果这是有意的,请首先将表达式转换为“unknown”。

下面的“强制类型转换”部分介绍了如何重写这一点。

使用 <> 进行类型转换

使用 <> 与使用 as 进行类型转换的效果相同。

实例

let x: unknown = 'hello';

console.log((<string>x).length);

这种类型的类型转换在 TSX 中不起作用,例如在处理 React 文件时。

强制类型转换

为了重写 TypeScript 在进行类型转换时可能抛出的类型错误,请首先将类型转换为 unknown,然后再转换为目标类型。

实例

let x = 'hello';
console.log(((x as unknown) as number).length); // x 实际上不是一个数字,所以这将返回 undefined

相关视频

更多

免费

前端入门_HTML5
初级前端入门_HTML5

64.8万次学习

收藏

免费

30分钟学会网站布局
初级30分钟学会网站布局

24.6万次学习

收藏

免费

CSS视频教程-玉女心经版
初级CSS视频教程-玉女心经版

41.1万次学习

收藏

免费

JavaScript极速入门_玉女心经系列
初级JavaScript极速入门_玉女心经系列

76.4万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

65万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

41.3万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76.8万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

64.2万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.4万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

36.3万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

133.5万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载