柯莱特 小米外包 凉经

失败换不来成功,总结反思失败才能换来成功

Q1: 说一下原型链

  • 原型:每一个 JavaScript 对象(null 除外)在创建的时候就会与之关联另一个对象,这个对象就是我们所说的原型,每一个对象都会从原型"继承"属性,其实就是 prototype 对象。
  • 原型链:由相互关联的原型组成的链状结构就是原型链。

现场时候说的卡卡斑斑。体现我之菜

Q2:裸写一个react组件,然后页面展示实时更新的时间,每秒都刷新. 时间戳也可以

import {useState, useEffect} from react

export function App() {
  const [time, setTime] = useState(Date.now().toString());

  const timer = setInterval(() => {
    setTime(Date.now().toString());
  }, 1000);

  useEffect(() => {
    return () => {
      clearInterval(timer);//面试官提示我要做清除  我连clearInterval都忘了
    };
  }, []);

  

  return <div>{time}</div>;
}

Q 3: 实现一个函数,内部有一个初始化为空的数组,往这个数组中插入随机整数,直到这个数组内部的元素是由1-100之间的元素构成,无重复值,无空缺,返回数组

const arr = [];

function creatArr(num) {
  if (!arr.includes(num) && num <= 1 && num >= 100) { 以为是随机超过一百树。多余判断了都
    arr.push(num);
  }
  if (arr.length === 100) return arr;
  else {
    creatArr(Math.random(0, 1) * 100);
  }
}

const res = creatArr(Math.random(0, 1) * 100);
return res

回想起来这样写好了

while(arr.length <= 100){
  const num = Math.round(Math.random(0, 1) * 100// 没写round 寄了
  if(!arr.includes(num)  arr.push() 
}

反问:我表现咋样

回去商量给看你结论

公司招人不是hr刷kpi吧

一直都在找

#我的求职思考##如何判断面试是否凉了#
全部评论
一面还是二面?
点赞 回复 分享
发布于 12-09 10:05 湖北
const getNums =()=>{ let arr = [] for(let i =0;i<100;i++){ if(arr.length<100){ let num = Math.ceil(Math.random()*100) if(!arr.includes(num)){ arr.push(num) } } } return arr }
点赞 回复 分享
发布于 2024-12-31 11:23 江苏

相关推荐

常规问题:&nbsp;1.&nbsp;3分钟简单自我介绍2.&nbsp;在实习和开源经历中,你遇到的最大困难或最具挑战性的事情是什么?实习拷打(拓展相应的场景八股)慢&nbsp;sql&nbsp;治理相关的1.&nbsp;你在平台稳定性建设中提到通过添加索引、读写分离优化慢SQL,具体是怎么做的?2.&nbsp;读写分离可以再详细说一下吗3.&nbsp;能否举一个添加索引的具体例子?比如在哪个字段上加了什么类型的索引?4.&nbsp;你加的是单列索引,如果查询只需要表中的几个字段,当前的单列索引是否有优化空间?5.&nbsp;联合索引相比单列索引的优势是什么?为什么更优?(从回表,索引下推优化那个方向说就好)es&nbsp;慢查治理相关1.&nbsp;关于ES扩容主分片优化查询,具体是怎么做的?2.&nbsp;系统的ES集群资源配置你了解吗?(如CPU、节点数等)3.&nbsp;扩容分片数量是如何确定的?仅依据数据量吗?4.&nbsp;分片切割后为什么查询会变快(并行查询)5.&nbsp;将&nbsp;long&nbsp;类型字段转为keyword类型,是如何利用跳表结构的?这里其实并不能,只是切换是为了适应精准匹配的场景,keyword&nbsp;的底层用的是倒排索引+跳表6.&nbsp;除了分片扩容和类型转换,还有哪些方式可以优化ES慢查询?(force&nbsp;merge&nbsp;整理碎片)分布式锁(业务中有个并发修改用到了,主要问的一些分布式锁的实现细节)1.&nbsp;你在业务中使用的分布式锁是标准库还是自研的?2.&nbsp;让你自己实现一个最简单的分布式锁,你会怎么实现?3.&nbsp;如果任务加锁后异常退出,没有释放锁,如何避免死锁?4.&nbsp;如果任务执行时间很长,锁过期被其他任务获取,原任务完成后误删了别人的锁,如何解决(防止锁的误释放,加标识)5.&nbsp;如果任务A包含多个子任务,且子任务本身也有加锁逻辑,在嵌套调用时会因重复加锁失败,如何解决?(可重入锁的实现)6.&nbsp;在秒杀场景下,能否直接用分布式锁控制库存扣减?会有什么问题?7.&nbsp;如何让秒杀请求不立即失败?(锁的自旋)并发编程1.&nbsp;你使用CompletableFuture并发查询多个维度,底层是如何实现并发的?2.&nbsp;你是自己定义线程池,还是使用默认线程池?3.&nbsp;你是基于什么依据设置线程池参数的?4.&nbsp;如果一个任务同时包含CPU密集型和I/O密集型操作,共用一个线程池会有什么问题?应该如何设计?(线程池隔离,避免cpu密集型任务阻塞I/O密集型任务)Agent和开源相关的内容1.&nbsp;你的基座模型切换(DeepSeek&nbsp;→&nbsp;千问)后,响应是流式还是非流式?2.&nbsp;为什么关注完整响应时间,而不是首字响应时间?(主要是业务上的一个需要)3.&nbsp;你的性能优化目标是在保证输出内容不变的前提下缩短生成时间吗?4.&nbsp;你在Agent框架中使用了责任链模式和观察者模式,请分别解释这两种模式5.&nbsp;既然有四个固定执行步骤(Agent执行前,执行后,模型执行前,执行后),是否可以用模板方法模式替代责任链模式?6.&nbsp;你使用观察者模式的具体场景是什么?为什么选择它?7.&nbsp;你还了解哪些常用设计模式?8.&nbsp;你提到使用HNSW算法进行向量搜索,能简述其基本原理吗?(避免全表的向量查询)9.&nbsp;为什么不直接用余弦相似度做全量匹配,而要引入HNSW?10.&nbsp;你是否使用过BM25算法?它的作用是什么?11.&nbsp;向量搜索有哪些弊端?12.&nbsp;向量检索和BM25全文检索的得分量纲不同,如何进行混合排序?(引入一个精排模型重新打分)反问:1.&nbsp;业务(智能客服相关)2.&nbsp;不足,基础还需要加强无手撕,总体一个小时总结:面试体验很好,主要就是根据简历延伸一些八股和简单场景,有些还需要加强的地方,挖出来了自己基础上的一些问题
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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