字节Ads Infra 前端实习一面

面了整整两个小时,面试官小姐姐很好,基本都会但是可能我太紧张了没答好,最后还是挂了qwq

自我介绍

项目1:性能优化怎么做,单帧渲染时间和内存是如何计算的,直接看性能指标的

项目2:权限模型是怎么设计的,前端如何限制,其他还有什么鉴权方式,cookie session

jwt的优缺点

flex:0 1 auto 分别代表什么

浏览器是如何渲染一个html文件的

浏览器的存储方式有哪些,有什么差异,session和sessionStorage,用过indexDB吗

css加载会阻塞dom树的解析吗,会阻塞渲染吗

讲一下浏览器的事件循环,如果在执行微任务的时候又产生了微任务,这个是在什么时候执行的

列举你知道的微任务和宏任务有哪些,process.nextTick是什么时候执行的

node事件循环,6个阶段

题1:事件循环输出顺序

为什么需要有微任务这个概念,可以从执行时机方面考虑

网络请求xhr是什么任务

promise.all和promise.once,如何处理报错

promise.race是什么

promise.all如何实现所有的执行完再返回(可以直接catch,或promise.allSettled)

new的过程中做了什么,和构造函数有什么关联

讲一下原型和原型链

用过ts吗,讲一下泛型

题2:实现泛型

const getValue: FN = (obj, key) => {
    return obj[key]
}
getValue({a: 1}, 'a')
getValue({a: 1}, 'b') // error
getValue('1', 'b') // error

type FN<T, K extends keyof T> = (obj: T, key: K) => T[K];

为什么用vue可以直接用this.xxx来赋值,而react不行(vue响应式

为什么react要使用setState显式的设置值

hooks为什么不能在循环或条件语句中执行

express和koa有什么区别,中间件执行方面

题3:大数相加

题4:实现一个eventBus(发布订阅)

class eventBus {
    on() {}
    off() {}
    once() {}
    emit() {}
}

const event = new eventBus()

// 事件绑定
event.on('message', console.log.bind(null, 1))
event.on('message', console.log.bind(null, 2))
// 事件触发
event.emit('message')

// 输出 1 2

题5:封装hooks

// https://xxx.com?status=1&keyword=test
// request.get(url, {})

function useSearch() {
    //your code
    return {
        data
    }
}

反问

岗位职责

后续流程

有什么不足的

#我的实习求职记录#
全部评论
佬 promise.once()是啥
1 回复 分享
发布于 2023-10-10 18:54 陕西
这是不是有点难?
1 回复 分享
发布于 2023-10-06 12:11 浙江
真难啊。。。。
点赞 回复 分享
发布于 2023-10-11 19:07 浙江
好难
点赞 回复 分享
发布于 2023-10-10 08:11 江西
大佬
点赞 回复 分享
发布于 2023-10-08 18:30 安徽
点赞 回复 分享
发布于 2023-10-07 19:28 广东
途虎养车欢迎投递呀,https://www.nowcoder.com/feed/main/detail/7e534118d1974d9a82483b460c190077?sourceSSR=users
点赞 回复 分享
发布于 2023-10-06 12:05 上海
点赞 回复 分享
发布于 2023-10-06 07:59 广东

相关推荐

03-30 20:12
已编辑
东南大学 C++
1.你做一下自我介绍。2.你的规划是什么?3.你说的是长期规划,那技术方向上有什么倾向?4.你有考研的计划吗?5.你是打算本科毕业直接工作吗?6.你们现在保研结果出来了吗?7.你现在有没有其他实习&nbsp;offer?8.字节那边的实习没有继续做了吗?9.你现在不能再回原来的组实习了吗?10.如果原来实习的组给你&nbsp;offer,你会去吗?11.你做的&nbsp;C++&nbsp;客户端是&nbsp;PC&nbsp;端的吗?12.你们做的是一个&nbsp;C++&nbsp;SDK,对接&nbsp;iOS、安卓和鸿蒙,是吗?题目一&nbsp;/&nbsp;C++&nbsp;并发相关15.这段代码有什么问题?16.为什么这里会出现多线程问题?17.除了加锁,还有什么解决方法?18.你先解释一下&nbsp;static&nbsp;作用在变量上、作用在函数上有什么区别。19.如果这个函数是类里的普通成员函数,里面定义了一个&nbsp;static&nbsp;变量,再对它做&nbsp;push_back,会有什么问题?20.为什么这个&nbsp;static&nbsp;变量不会每次调用都重新初始化?21.如果你用锁来解决,这个锁应该声明在哪里?22.如果这个类实例化出两个对象&nbsp;A&nbsp;和&nbsp;B,它们都会调这个函数,那是不是也会操作同一个数组?23.那这里是不是应该用静态锁,或者类似的全局共享锁?24.除了用锁之外,还有没有别的解决办法?25.你提到原子变量,那你怎么理解原子变量?26.如果代码可以随便改,为什么不能把&nbsp;static&nbsp;去掉?27.把&nbsp;static&nbsp;去掉以后,能不能解决并发问题?28.如果把&nbsp;static&nbsp;去掉,会引入什么额外问题?C++&nbsp;/&nbsp;容器&nbsp;/&nbsp;数据结构29.你简历里提到用了&nbsp;concurrent&nbsp;hashmap,可以介绍一下吗?30.哈希表的实现原理你知道吗?31.哈希表是有序的还是无序的?32.如果要把它做成“按插入顺序有序”,你会怎么做?33.标准库里的&nbsp;std::map&nbsp;底层实现原理你了解吗?实习项目追问34.你介绍一下你说的这个三档&nbsp;TTL&nbsp;和分层缓存框架。35.这个&nbsp;key&nbsp;是怎么设计的?36.value&nbsp;里存的是什么?37.这个缓存是怎么更新的?怎么触发更新?38.这样的话使用方如果拿到的是过期值,是不是要多等一次回源时间?39.你们的缓存命中率大概是多少?40.你拿到这个&nbsp;key&nbsp;之后,怎么知道去访问哪一档缓存?41.这个分档是动态判断的,还是你们手动维护配置文件?题目二&nbsp;/&nbsp;设计与代码实现操作系统52.你对虚拟内存有什么了解?53.虚拟内存是怎么实现的?54.系统怎么找到被换到磁盘上的那块数据?55.这个地址映射是怎么设计的?56.这个映射关系的数据结构叫什么名字?SQL&nbsp;优化&nbsp;/&nbsp;实习项目57.你之前做过&nbsp;SQL&nbsp;优化,是吧?58.解释一下什么是&nbsp;SQL&nbsp;签名化。59.这个服务是在后端部署的服务查数据库,还是端上的&nbsp;SDK&nbsp;查本地数据库?60.你查端上的数据库时,每次都要建立连接吗?61.你说多个&nbsp;SQL&nbsp;合并之后,只查最小时间戳,是什么意思?62.你们做这个优化的前提,是多个请求同时发过来,对吧?63.你们会去缓存这些请求吗?64.这个缓存多久?题目一二详见图片,正常面试一直在追问,然后不给反馈,全程冷脸。当然也认识到很多知识盲区了。很多不重要的问题删了,大多数是问实习。
点赞 评论 收藏
分享
评论
17
58
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务