首页 / 蔚来
#

蔚来

#
636478次浏览 9326人互动
此刻你想和大家分享什么
热门 最新
70场面试,复盘我遇到的有趣问题(四)
        今天分享一下美团和蔚来面试中遇到的一些问题。1.(蔚来二面)在forEach和map里面对遍历的值进行改变会影响原数组吗        认真背八股的同学肯定都记得,forEach不会返回新的数组,只是遍历每一项并做计算,map会返回新的数组,所以理所当然的想map不会改变原数组,forEach...会怎么样??想到这里就错了,这也是我当时的思路。        事实上这个问题跟上面那个八股完全没关系。试想一个函数,传递了参数进来并改变这个参数,会不会对原来数据进行改变呢?这个题是在靠这个,需要分类回答。        数组中数据为基本数据类型时,forEach和map都不会改变原数组;数据为引用数据类型时,map和forEach都会改变原数组。在使用 forEach 和 map 方法时,对引用类型元素的修改会直接反映在原始数组中。这是因为引用类型的元素实际上存储的是引用(内存地址),而非值本身。因此,通过引用可以访问和修改原始数组中的元素。而number,string,Boolean,null,undefined这些基本类型在栈内存中直接存储变量与值。2.(美团到家一面)为啥会出现箭头函数        这一个问题可以去b站渡一老师的小视频里看看。        肯定很多人跟我一样第一时间想到的是箭头函数和普通函数的区别,那为啥有这些区别,为啥要单独搞个箭头函数出来?难道只是为了简单吗。其实原因只有一个:消除函数的二义性。 在出现箭头函数之前,函数可以直接被调用,也可以被new当作构造函数使用,这就是函数的二义性。而这种二义性的存在是会给开发带来负担的,因为创建者并不知道未来函数的调用者是如何使用这个函数的,所以后来先在命名上做了规范:小写开头的函数是直接使用的,大写开头的是构造函数。但这种规范也不是强约束,毕竟既可以Number(),又可以new Number(),所以为了消除这种二义性,创造了箭头函数和class,箭头函数只能() => {},当作普通函数调用,而class只能被new,这就刚好对应二义性的两种用法,解决这种复杂情况了。————————10.10补充————————        感谢牛u的提示,这边还有一个点补充。        箭头函数的出现解决了this的复杂指向问题。        举例如图3所示,当调用show方法打印this.x的时候打印的是undefined。这是因为当代码执行到了setTimexout( )的时候,此时的this已经变成了window对象(setTimeout( )是window对象的方法),因此会在window上查找x,找不到,就输出undefined。        而如果是箭头函数,箭头函数的this是定义时就确定的,因此箭头函数的this指向的是obj,输出的就是obj.x。这样就解决了普通函数在当作回调函数传递的时候this变化带来的麻烦,否则就要用全局变量或者闭包之类的方法。3.(美团到家一面)obj对象中有一个方法,用obj.a()和(obj.a)()去调用分别输出什么(a方法中输出this.name,obj和全局都有一个name属性)?        这个题其实是当时考的一个输出题(图1)。下来尝试了一下,答案是没区别,都输出obj对象中的name。        这个题我一开始以为(obj.a)()这种调用就跟let b = obj.a,然后调用b()这种形式一样,但不是这样的,这个点可以记一下。        然后还要注意的一个点是,如果这个方法是箭头函数的形式(图2),那么this指向就不一样了,指向的是window。所以会在window上面去找name。那么这个时候输出什么?        是不是很多人脱口而出,“输出hong!”        恭喜各位掉到新坑了,这个时候输出是空(什么都没有:“”)        因为let和const定义的变量是不会挂到window对象身上的,如果改成var就能输出hong了,大家可以自行尝试一下、        (上面这个点个人认为还是很细的,一定要小心)                这几个是自己踩过的坑,第三点应该很多同学都会想错。        欢迎各位评论区交流~#24届软开秋招面试经验大赏##软件开发2024笔面经##美团##蔚来##前端#
菠萝包lime:佬说的太棒了,箭头函数这块我也看的渡一的视频,当时被问到还是挺爽的,直接从二义性回答。
点赞 评论 收藏
分享
2024-08-15 23:00
已编辑
门头沟学院 算法工程师
滴滴大模型一面面经
合合信息金牌内推官:感谢分享
查看13道真题和解析
点赞 评论 收藏
分享
🔥【2025深信服春招内推重磅开启|秋招0 offer急救指南|锁定20W+高薪|快速晋升】🔥
🚨 秋招战败必看!春招逆袭上岸最后一张王牌秋招失利≠能力否定!春招补录释放70%核心岗位技术/研发/产品/运营/市场全领域开放,应届生培养体系+扁平化晋升通道,24届、25届均可投!毕业焦虑终结计划现在启动▶🌟 5大理由告诉你:为什么春招必须All in深信服?🚀 【秋招补录直通车】释放大量未饱和HC,算法/云计算/网络安全等高薪岗位优先补录!💡 【零经验造星计划】30天带薪岗前培训+1v1导师护航,小白秒变领域黑马!💰 【薪资断层领先】本科21W+、硕士25W+起步,五险一金拉满,住房补贴覆盖100%房租!⚡ 【火箭晋升通道】2年内晋升率超37%,涨薪幅度30%+,拒绝论资排辈!🎯 【精准人岗匹配】AI+HR双链路简历诊断,优先推荐3个适配岗位!🚀 内推极速上岸指南(必看❗简历秒过秘笈)📌 内推码:NTABQpg ←复制粘贴到网申系统1️⃣ STEP1:极速网申👉 【2025春招内推专属通道】:(https://note.youdao.com/s/3FWFma1C)⚠️ 务必选择【内部推荐】并填写内推码!2️⃣ STEP2:抢占社群资源扫码入群领取Q&A📚:✅ 提前了解面试注意事项3️⃣ STEP3:激活隐藏BUFF私信我发送【岗位+学校】获取:🔸 往届岗位上岸情况💎 内推VIP特权(普通投递无法解锁!)❌ 跳过机器筛简历 ✔️ 直接进入业务主管池❌ 不再焦虑等消息 ✔️ 实时跟踪进度+催面特权❌ 单打独斗踩坑 ✔️ 群内HR在线剧透考纲⏳ 春招死亡线预警(附捡漏秘籍)🔺 每日释放少量新HC:早8点/晚8点刷新岗位列表📢 血泪教训预警:去年60% offer被前7天投递者斩获!👉 立刻点击投递链接抢占排序优势:【深信服内推直链】:(https://note.youdao.com/s/3FWFma1C)👉 24h内投递同学可私信我申请【简历加急标签】🛑 高危提醒:牛客网投递将同步至官网,请勿重复投递!💬 任何问题评论区提问(附高频QA):Q:毕业时间卡在24年12月能投吗?→ A:可!用25届身份投递Q:非科班想转技术岗?→ A:可!理工科背景即可#春招救命帖#秋招0offer上岸 #内推免笔试#校招薪资天花板 #应届生入职即巅峰#深信服内推码#2025届必看 #住房补贴100%#双非逆袭专场 #云计算大厂直通⚠️ 投递后务必私信我【姓名+岗位】,人工绑定内推关系!引流:#字节跳动#,#内推#,#实习#, #海康威视#,#深信服#,#腾讯#,#阿里巴巴#,#拼多多#,#滴滴#,#京东#,#小米#,#大疆#,#美团#,#好未来#,#小红书#,#华为#,#简历#,#offer#,#面试#,#面经#,#三方#,#国企#,#央企#,#秋招#,#春招#,#应届生#,#求职#,#华为#, #比亚迪#,#建设银行#,#工商银行#,#百度#,#中兴#,#邮储#、#中行#、#建行#、#工行#、#招商银行#、#科大讯飞#、#蔚来#、#新华三#
深信服科技
|
校招
|
超多精选岗位
点赞 评论 收藏
分享
玩命加载中
牛客网
牛客企业服务