ts中的强制类型转换

简介: ts中的强制类型转换

先看一个例子:

type T = {
  title: string
}
type U = {
  color: string
}
let result = <T&U>{}

result.title = '北京'
result.color = 'red'

如果我们写了一个空对象,需要给这个对象添加属性,这个时候是会报错的:

let result = {}
// 报错:提示不存的属性
result.title = '北京'

这个时候我们需要进行强制类型转换:

type T = {
  title: string
}
let result = <T>{}
// 不会报错了
result.title = '北京'

你也可以进行类型断言

type T = {
  title: string
}
let result = {};

(result as T).title = '北京'

注意写法有很多种

type T = {
  title: string
}
type U = {
  color: string
}
let result = {} as T;

result.title = '北京'
相关文章
|
前端开发 Java 调度
springboot整合SSE技术开发经验总结及心得
springboot整合SSE技术开发经验总结及心得
2221 0
|
JavaScript 内存技术
node与npm版本对应关系以及使用nvm管理node版本
node与npm版本对应关系以及使用nvm管理node版本
7175 0
|
资源调度 JavaScript 编译器
Vite中如何更好的使用TS
【8月更文挑战第4天】Vite中如何更好的使用TS
689 4
Vite中如何更好的使用TS
|
Web App开发 域名解析 缓存
如何在 Ubuntu 20.04 上安装 Node.js 和 npm
本文我们主要为大家介绍在 Ubuntu 20.04 上安装 Node.js 和 npm 的三种不同的方式。
162254 7
如何在 Ubuntu 20.04 上安装 Node.js 和 npm
|
人工智能 开发框架 Java
重磅发布!AI 驱动的 Java 开发框架:Spring AI Alibaba
随着生成式 AI 的快速发展,基于 AI 开发框架构建 AI 应用的诉求迅速增长,涌现出了包括 LangChain、LlamaIndex 等开发框架,但大部分框架只提供了 Python 语言的实现。但这些开发框架对于国内习惯了 Spring 开发范式的 Java 开发者而言,并非十分友好和丝滑。因此,我们基于 Spring AI 发布并快速演进 Spring AI Alibaba,通过提供一种方便的 API 抽象,帮助 Java 开发者简化 AI 应用的开发。同时,提供了完整的开源配套,包括可观测、网关、消息队列、配置中心等。
7055 115
|
前端开发
canvas文字绘制(大小、粗体、倾斜、对齐、基线)
canvas文字绘制(大小、粗体、倾斜、对齐、基线)
687 0
|
JavaScript 前端开发 搜索推荐
ECharts词云图(案例一)+配置项详解
ECharts,百度的JavaScript图表库,支持词云图(自5.0版起),借助`echarts-wordcloud`插件。配置词云图涉及`tooltip`(如显示、颜色、边框等)和`series`(类型、形状、大小范围等)。示例代码展示了如何在HTML中引入依赖并配置词云图,包括数据、形状、大小、颜色等。完整代码和依赖可下载。调整这些配置可创建个性化词云图。参阅官方文档获取不同版本详情。
3665 4
 ECharts词云图(案例一)+配置项详解
|
SQL Java 关系型数据库
SpringBoot 系列之 MyBatis输出SQL日志
这篇文章介绍了如何在SpringBoot项目中通过MyBatis配置输出SQL日志,具体方法是在`application.yml`或`application.properties`中设置MyBatis的日志实现为`org.apache.ibatis.logging.stdout.StdOutImpl`来直接在控制台打印SQL日志。
SpringBoot 系列之 MyBatis输出SQL日志
|
存储 缓存 API
CocosCreator3.8研究笔记(十四)CocosCreator 资源管理Asset Manager
CocosCreator3.8研究笔记(十四)CocosCreator 资源管理Asset Manager
972 0
|
JavaScript API 索引
js中的reduce()方法 讲解 和实现
`reduce()` 方法对数组元素依次应用一个回调函数,将结果累计并最终返回单一值。语法为 `reduce(callback(accumulator, currentValue, currentIndex, array), initialValue)`。参数包括累计器(初次为初始值或首元素)、当前元素值、索引及数组自身。此方法需返回值供下一轮迭代使用。常见应用场景包括计算数组总和与平均值、统计元素频率、过滤与转换数组内容及去除重复项等。例如,可通过 `reduce()` 快速计算 `[1, 2, 3, 4, 5]` 的总和或对对象属性值求和。此外,还可自定义实现 `reduce()` 方法
3328 1

热门文章

最新文章