咱们这也不算纯面经贴,坚持看到最后有惊喜哦!!!二面小哥哥人狠话不多,在我balabala。。。做完自我介绍以及项目介绍之后,问我有木有做过node相关项目,或者有木有后台经验,当我说没有的时候我是能感受到面试官脸上的失望的,直接做题。。。。
;(function(w) {
//工厂
function jQuery(selector, context) {
return new jQuery.fn.init(selector, context)
}
//给原型提供一个简写方式
jQuery.fn = jQuery.prototype = {}
//init才是jQuery中真正的构造函数
var init = (jQuery.fn.init = function(selector, context) {})
//把构造函数的原型,替换为jQuery工厂的原型
init.prototype = jQuery.fn
w.jQuery = w.$ = jQuery
})(window)
//父类
function Super() {
this.flag = true
}
//方法绑定在父类原型属性上
Super.prototype.getFlag = function() {
return this.flag
}
//子类
function Sub() {
this.subFlag = false
}
为了规避原型链继承和构造函数继承的缺点,一般采用组合继承通过调用父类构造,继承父类的属性并保留传参的优点,然后通过将父类实例作为子类原型,实现函数复用。
function Super() {
this.flag = true
}
Super.prototype.getFlag = function() {
return this.flag //继承方法
}
function Sub() {
this.subFlag = flase
Super.call(this) //继承属性
}
Sub.prototype = new Super()
Sub.prototype.constructor = Sub //修复构造函数指向
Super.prototype.getSubFlag = function() {
return this.flag
}
写完之后又问了我原型链继承和构造函数继承的缺点
ES6封装了 class,extends 关键字来实现继承,内部其实也是 ES5 组合继承的方式,通过 call 借用构造函数,在 A 类构造函数中调用相关属性,再用原型链的连接实现方法的继承
const getSingle = function(fn) {
let result
return function() {
return result || (result = fn.apply(this, arguments))
}
}
其实有点蒙也很紧张,因为我只会画三角形,我就说两个三角形加一个正方形实现。实现三角形的代码如下
.box{
height :0;
width :0;
border-left:50px solid transparent;
border-right:50px solid transparent;
border-top:100px solid red;
}
然后面试官说那你得实现梯形呀,我说移动位置拼接成等腰梯形,用 transform 实现,让我写出来。。。
function Quene() {
var stack1 = [],
stack2 = []
this.push = function(node) {
stack1.push(node)
}
this.pop = function() {
if (stack2.length == 0) {
if (stack1.length == 0) {
return null
} else {
var len = stack1.length
for (var i = 0; i < len; i++) {
stack2.push(stack1.pop())
}
return stack2.pop()
}
} else {
return stack2.pop()
}
}
}
可能因为面试时间到了的原因,没有问其他题目,第一个问题和 CSS 画等腰梯形那个没有写出来。二面面试官是希望候选人有后台经验的,很可惜,我木有哇。。。而且竟然问 JQuery 说明应该不做前端好久了吧。看网上的面经好像都比较难,可能真的因为我菜如狗,面试官问的并不算很难,也没超纲。面完之后都快十点了,HR 打电话约终面,其实我想直接放弃了,面试太压抑。。。。
分享一点个人的校招感悟吧
小姐姐在感悟中提到的图谱是我开源在 Github 上的内容,目前已经 13K Star 多了,有兴趣的可以后台回复【图谱】获取链接。
最后,看面经不如看风景哇~~~赠送我在丽江拍的照片
本文分享自微信公众号 - AI算法与图像处理(AI_study)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。