xgqfrms™, xgqfrms® : xgqfrms's offical website of cnblogs! xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!

TypeScript Intersection Types All In One

TypeScript Intersection Types All In One

交叉类型(类型合并)

interface A { a: number }  
interface B { b: number }

var ab: A & B = { a: 1, b: 1 };  
var a: A = ab; 
// A & B assignable to A  
var b: B = ab;
// A & B assignable to B



interface X { p: A }  
interface Y { p: B }

var xy: X & Y = { p: ab };
// X & Y has property p of type A & B



type F1 = (a: string, b: string) => void;  
type F2 = (a: number, b: number) => void;

var f: F1 & F2 = (a: string | number, b: string | number) => { };  

f("hello", "world");  
// Ok  
f(1, 2); 
// Ok  
f(1, "test"); 
// Error

refs

https://github.com/microsoft/TypeScript/blob/main/doc/spec-ARCHIVED.md#35-intersection-types



©xgqfrms 2012-2020

www.cnblogs.com/xgqfrms 发布文章使用:只允许注册用户才可以访问!

原创文章,版权所有©️xgqfrms, 禁止转载 🈲️,侵权必究⚠️!


posted @   xgqfrms  阅读(41)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2021-02-07 Steam 钓鱼模拟器 All In One
2021-02-07 JavaScript Engine 可视化
2021-02-07 js Promise finally All In One
2021-02-07 AirPods Max 出厂激活是怎么回事
2021-02-07 js function All In One
2021-02-07 element-ui dialog loading
2020-02-07 vue & $router & History API
点击右上角即可分享
微信分享提示