前端面试遇到的一道算法题

add(1)(2)(3).sum();
要求我可以任意多个小括号,然后一调用.sum()就可以求和

请问各位大佬们要怎么做呀?
我知道是用柯里化,但是那个.sum()要咋么整呀
#面试题目#
全部评论
function add(){     let args = [...arguments]          let fn =  function(){         return add.apply(null,[...arguments,...args])     }     fn.sum = function(){         return args.reduce((a,b)=>a+b)     }     return fn }
点赞 回复 分享
发布于 2020-09-01 14:47
你要在add函数里面声明一个函数用于收集参数,并在这个函数身上挂载一个sum函数,然后把这个函数返回。
点赞 回复 分享
发布于 2020-08-31 18:38

相关推荐

08-01 15:42
长江大学 Java
迷茫的大四🐶:???笑拉了,和别人签订协议,让别人按,赚了就是自己的,亏了就是别人的,这就是利益最大化,说白了就是拉人平摊风险同时保证自己拥有话语权
你遇到最难的面试题目是_
点赞 评论 收藏
分享
07-30 18:17
已编辑
东莞理工学院 Web前端
字节跳动火山引擎一面46 分钟2025.7.151. 自我介绍2. 介绍项目3. 看你项目提到了,cloudflare的全球加速是怎么做的?4. 浏览器访问链接全过程5. 页面框架加载优化6. 跨域是什么7. 数组和链表的随机查找、插入删除的时间复杂度的8. MySQL写入锁9. HTTP缓存 强缓存 协商缓存10. 算法题11. 反问字节火山引擎二面1. 自我介绍2. 项目介绍3. 项目遇到的性能问题是如何解决的4. css如何实现动画(transition、keyframe)5. 如何渲染一万个元素(documentfragment、虚拟列表),同时显示的话呢?(canvas、requestAnimationFrame延迟加载分片渲染)6. 算法题:控制并发量7. 未来职业发展字节火山引擎三面2025.7.221 小时1. 请做一个简单的自我介绍。2. 之前编程主要是什么方向?是爱好还是认真学习的?3. 你更喜欢做前端、全栈还是其他方向?为什么觉得前端可替代性强?4. 你平时学习技术的渠道有哪些?5. 你现在独立运营两个产品,未来有考虑盈利吗?6. 未来的职业发展规划7. 请介绍一下你简历里提到的XXX项目,它主要是什么,有哪些难点?8. 对于XXX项目中性能优化问题,你解决减少顶点数量的思路是什么?9. 提高三维图形真实性的路径精确计算,用到了什么算法?10. 在XXX项目中,用 WebGL 处理时性能瓶颈通常出现在哪些方面,你是如何解决的?11. 请介绍一下另一个项目 app,它主要功能是什么,如何解决学生无网络时的离线使用问题?12. 这个 app 做了哪些数据分析,还有哪些社交相关功能,自习室排名逻辑是什么?13. 这个 app 如何实现一个账号在多设备同步?14. 你做的项目中前端跨端表现好是因为编译成二进制文件和内置运行时,能说说大概流程吗?15. 能介绍一下 Flutter 开发中 element 和渲染对象相关知识,以及不同端的渲染实现逻辑吗?16. HTTP1.0、HTTP2.0、HTTP3.0 有什么区别?17. TCP 和 UDP 有什么区别,Promise 有哪三种状态,分别是什么?18. 你了解哪些网络安全方面的内容?19. 你用到了数据库,能介绍常见数据库类型及大致划分区别吗?20. 你提到 CDN,能说说 CDN 加速的原理吗?21. 算法题:最长公共子串、二路归并22. 你后续的长期规划是继续做技术,还是也会考虑往产品方向发展?23. 你未来实习时间大概是怎样的,可以长期实习吗?可以转正吗?24. 如果未来做的事情和你自己的规划不太匹配,且全栈机会不多,你会怎么选择?2025.7.30HR 反馈:业务说咱们的前端经验和产品sense都很好,但是沟通表达能力相对于另一位同学薄弱了些,并且对于未来规划这部分不太清晰,希望咱们目标可以更坚定一些
点赞 评论 收藏
分享
评论
点赞
4
分享

创作者周榜

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