字节逆天前端凉经,被狠狠羞辱了一小时,八股篇

前言,上一篇忘记写了,面试官很忙,一遍面我还得一边回消息,这也是为啥我不想去大厂的原因。。。

虽然以我的水平进不去,但是我个人确实也是不想去

这就导致了什么,理解能力不比智障好的我和面试官沟通起来更困难了

你可以想象成一个没有经历过深度学习训练过的大模型,每一次对话都是新的开始。。。。。

爷蚌埠住了

vue的双向绑定为什么3要相对于2进行更新,也就是语法糖为什么要发生变化

useEffect的回调和普通函数回调的区别

[0]==0吗,解释

判断数组isArray和tostring.call结果是一样的吗(查了下好像tostring.call的值能改,我当时回答的一样,因为底层都是一样的)(我突然想起来,她不会问的是返回值吧,那一个是布尔,一个是数组啊。。。。。。应该不会吧????)

forEach能遍历不可遍历的属性吗,不可遍历的属性怎么变得可遍历

Object.defineProperty用过哪些方法(我就会set和get,我说上一题为什么没答上来)

webpack怎么配置能把less或者sass变成一个独立的css文件(这不是八股,属于场景题了)

转译成css用到了哪些loader,这些loader分别返回的文件是什么,就是问输出是什么产物

optimization不用plugin能不能做(你听听这都问的啥啊)

就这些

看着少是因为这是普通八股的深挖,比如为什么突然提到了forEach,就是问遍历有哪些方式,延伸出来的

常规的八股就不写了,因为别人的面经已经写过太多了

这应该是我最后的一篇面经了,不是说我已经有offer开躺了,是爷的邮件彻底死了,秋招也结束了,没面试了,还写个勾八

再加上大部分还是问我的简历,八股问的少一些,所以有些面过的公司,面完发现没有能写的啊

字节技术面有三面,二面很字节,一面难度简单的跟外包没区别,就是写题三道,比起外包在这点上难了很多

还有一点要吐槽的就是,我有实现一个类似抖音刷视频的功能,但是两面下来没有一个面试官对这个感兴趣

就和我面AI公司根本不问我对AI的理解一样,很抽象

感觉面评肯定和屎没区别了

全部评论
你们都有offer了是吧,十月末我发个字节面经都没人看了???
8 回复 分享
发布于 2024-10-28 18:31 浙江
字节最近都是kpi,估计都没hc了
1 回复 分享
发布于 2024-11-02 17:29 上海
羡慕
1 回复 分享
发布于 2024-10-29 18:14 湖南
我Vue和React的八股都不行,字节一面也被问倒了,但是面试官没有怎么为难,马上就给其他领域的八股了,最好给的评价还是基础还不错。非凡尔赛,只能说运气或者说和面试官的气场符不符合还是挺重要的。
1 回复 分享
发布于 2024-10-29 17:59 江苏
这。。这对吗,我面的其他宇宙的字节这是
1 回复 分享
发布于 2024-10-29 00:51 江苏
这就是字节,难度太随机
1 回复 分享
发布于 2024-10-28 21:00 陕西
那并不是在回消息,而是在记录你的面评
点赞 回复 分享
发布于 2024-12-15 08:13 北京
围观大佬
点赞 回复 分享
发布于 2024-10-28 18:59 辽宁

相关推荐

华勤技术 安卓fw 12k×15薪 本科其他
点赞 评论 收藏
分享
字节跳动前端二面失败面经:复盘与反思一、面试整体感受本次字节跳动前端二面的考核强度明显提升,面试官从计算机基础、CSS 知识,到 JavaScript 核心概念与实践应用层层深入,虽然最终遗憾未通过,但这次经历让我清晰认识到自身知识体系的薄弱环节。二、面试问题回顾与解析1. CS 基础与 CSS 考察• 实现父容器一半大小的正方形:我第一反应是使用 vw 单位,将子容器的 width 和 height 都设置为 50vw。但面试官的意图更倾向于基于父容器尺寸的相对计算,正确思路应该是通过百分比结合 padding-bottom 实现等比例正方形(如 width: 50%; padding-bottom: 50%;),并利用 position 或 flex 布局定位到父容器内。• CSS 盒模型:我准确回答了 标准盒模型(content-box) 和 怪异盒模型(border-box) 的区别,重点说明了 box-sizing 属性对尺寸计算的影响。2. JavaScript 核心概念与 BOM 考察• BOM(浏览器对象模型):当被问到 BOM 相关知识时,我对 window 对象的属性(如 location、history)和方法(setTimeout、addEventListener 等)掌握不够熟练,回答较为模糊,暴露出日常学习中对浏览器环境底层知识的忽视。• 事件委托:面试官询问事件委托原理时,我错误地将其等同于事件冒泡。实际上,事件委托是利用事件冒泡机制,将子元素的事件处理委托给父元素,从而减少内存占用和提高性能。例如,在列表项点击事件中,可将点击事件绑定在列表容器上,通过判断事件源 event.target 处理具体逻辑。3. 代码实战环节• 实现 JavaScript 链式调用并支持 bind 功能:题目要求实现类似 i.initial(5).add(5).minus(3).plus(5).result 的链式调用,并能使用 bind 修改内部状态。我顺利完成了基础的链式调用逻辑,通过返回 this 实现连续调用,并维护一个内部变量记录计算结果:function Chain() {this.value = 0;this.initial = function (num) {this.value = num;return this;};this.add = function (num) {this.value += num;return this;};this.minus = function (num) {this.value -= num;return this;};this.plus = function (num) {this.value += num;return this;};this.result = function () {return this.value;};}但在实现 bind 功能时,由于对 bind 改变函数 this 指向的原理理解不足,未能完成。正确思路是通过 Function.prototype.bind 方法创建一个新函数,在新函数中调用原始方法,并传入绑定的参数和 this 值。• 封装安全的 React Hook:需求是处理可能失败的异步请求,并确保数据安全。我通过 useState 和 useEffect 实现了一个简单的 fetch 请求钩子,在 catch 块中处理错误,并添加了加载状态和错误信息的状态管理:import { useState, useEffect } from'react';const useSafeFetch = (url) => {const [data, setData] = useState(null);const [loading, setLoading] = useState(true);const [error, setError] = useState(null);useEffect(() => {const fetchData = async () => {try {const response = await fetch(url);const result = await response.json();setData(result);} catch (err) {setError(err);} finally {setLoading(false);}};fetchData();}, [url]);return { data, loading, error };};• 手写 JSONP 函数:要求传入 URL、成功回调、失败回调和超时时间。由于对 window 对象动态创建 script 标签、onerror 和 onload 事件,以及 clearTimeout 等原生方法不够熟悉,最终未能完整实现。正确实现思路如下:function jsonp(url, successCallback, errorCallback, timeout) {const script = document.createElement('script');const callbackName = `jsonp_callback_${Date.now()}`;window[callbackName] = (data) => {clearTimeout(timer);document.body.removeChild(script);successCallback(data);};script.src = `${url}&callback=${callbackName}`;script.onerror = () => {clearTimeout(timer);delete window[callbackName];errorCallback(new Error('JSONP request failed'));};document.body.appendChild(script);const timer = setTimeout(() => {document.body.removeChild(script);delete window[callbackName];errorCallback(new Error('JSONP request timed out'));}, timeout);}三、总结与反思此次面试失败暴露出我在 BOM 细节、事件机制、函数绑定原理 等基础知识上的不足,以及 复杂场景下代码实现能力 的欠缺。未来准备面试时,需更深入理解 JavaScript 原型链、作用域、this 机制等核心概念,同时加强手写代码的练习,尤其是对原生 API 的熟练运用。希望我的经历能为大家提供参考,避免踩坑!
查看7道真题和解析
点赞 评论 收藏
分享
评论
15
26
分享

创作者周榜

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