1个回答
test
2024-07-06
先回答 24 行,用不用 this 问题都不大。
对于使用方来说,想用 this ,那么必定是箭头函数,apply 也改不了。如果不想用this,那么改不改都一样。
13 行,就是 ts 的特性了,支持这样写。
但是如下这种就不太好使
type Pingable3 = {
ping: (text: string) => void;
} | {
ping2: (text: string) => void;
}
class Sonar6 implements Pingable3 {
}
测试代码
interface Pingable {
ping(text: string): void;
}
type Pingable1 = {
ping: (text: string) => void;
}
//
class Sonar implements Pingable {
ping() {
console.log("ping!");
}
}
class Sonar1 implements Pingable {
}
class Sonar2 implements Pingable1 {
}
class Sonar3 implements Pingable1 {
ping() {
console.log("ping!");
}
}
class Sonar4 implements Pingable1 {
ping(text: string) {
console.log("ping!", text);
}
}
type Pingable3 = {
ping: (text: string) => void;
} | {
ping2: (text: string) => void;
}
type Pingable4 = {
ping: (text: string) => void;
} & {
ping2: (text: string) => void;
}
class Sonar6 implements Pingable3 {
}
class Sonar7 implements Pingable4 {
ping(text: string) {
console.log("ping!", text);
}
ping2(text: string) {
console.log("ping!", text);
}
}
本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容