type User ={
id: number;
name?: string;
nickname?: string;
}
type Info = {
id: number;
city?: string;
}
type SuperUser = User & Info;
let su:SuperUser;
su.id = 1;
console.log(su);
这是一个简单的代码。我确实尝试了交叉点类型。为什么控制台向我返回“ su”未定义?
答案 0 :(得分:1)
您需要先为变量分配一些值,否则将是undefined
,如下所示:
type User ={
id: number;
name?: string;
nickname?: string;
}
type Info = {
id: number;
city?: string;
}
type SuperUser = User & Info;
let su:SuperUser = { // <-- First we assign some value
id: 1
};
su.id = 2; // <-- and then we can use or change the value
console.log(su);