Web前端最全改别人Bug 系列《TS面试题接口规范构造函数》,2024年最新计算机网络面试知识

最后

今天的文章可谓是积蓄了我这几年来的应聘和面试经历总结出来的经验,干货满满呀!如果你能够一直坚持看到这儿,那么首先我还是十分佩服你的毅力的。不过光是看完而不去付出行动,或者直接进入你的收藏夹里吃灰,那么我写这篇文章就没多大意义了。所以看完之后,还是多多行动起来吧!

可以非常负责地说,如果你能够坚持把我上面列举的内容都一个不拉地看完并且全部消化为自己的知识的话,那么你就至少已经达到了中级开发工程师以上的水平,进入大厂技术这块是基本没有什么问题的了。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

初步想法


最初按照题目和分析,加上构造函数就行,之前我也没有这样用过:

interface MyInterface {

new (name:string):MyInterface

}

class Bar implements MyInterface {

constructor(public name: string) {}

}

class Foo implements MyInterface {

constructor(public name: string) {}

}

function myfn(Klass: MyInterface, name: string) {

return new Klass(name);

}

let bar = myfn(Bar,‘1’);

let foo = myfn(Foo,‘2’);

console.log(bar,foo);

输出结果:

Bar { name: ‘1’ } Foo { name: ‘2’ }

运行时可以的,但是类型检查室报错的。

在这里插入图片描述

TS 推荐写法


interface MyInterface {

}

interface MyConstructor{

new (name:string):MyInterface

}

class Bar implements MyInterface {

constructor(public name: string) {}

}

class Foo implements MyInterface {

constructor(public name: string) {}

}

function myfn(Klass: MyConstructor, name: string) {

return new Klass(name);

}

let bar = myfn(Bar,‘1’);

let foo = myfn(Foo,‘2’);

console.log(bar,foo);

这里因为当一个类实现了一个接口时,只对其实例部分进行类型检查。 constructor存在于类的静态部分,所以不在检查的范围内。

总结

面试前要精心做好准备,简历上写的知识点和原理都需要准备好,项目上多想想难点和亮点,这是面试时能和别人不一样的地方。

还有就是表现出自己的谦虚好学,以及对于未来持续进阶的规划,企业招人更偏爱稳定的人。

万事开头难,但是程序员这一条路坚持几年后发展空间还是非常大的,一切重在坚持。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

前端面试题汇总

JavaScript

前端资料汇总

  • 17
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值