首页 > 其他 > 详细

记今天的面试

时间:2019-12-31 23:26:23      阅读:84      评论:0      收藏:0      [点我收藏+]

最近一个月投了好几个简历,只有一家过了初筛,拿到了面试机会,年末找实习好难啊。

今天赶高铁过去面试,到了目标城市准备恰个中饭,顺便查了下高德,看看可以有多少时间恰午饭。一算时间,只有半个小时给我了,吓得我光速点完中饭,胃口也跌了点,吃的还剩1/5就吃不下了。赶去的路上还因为着急,走错了路,我真是一个看地图鬼才。但是!到目的地的时候,居然还剩下40分钟...emmm高德地图呕呕呕(猫猫呕吐.jpg)

面试前,先让我做了一下笔试,笔试题中,我比较在意的是这几道题(因为不会)
  1. 使用js检测一个字符串中出现次数最多的字符

  答案:

const str = "aaaaasdffgacaabbrtbbrr";
//  用于存储每个字符的重复次数
const oChar = {}
for(let i=0; i < str.length; i++) {
    if(!oChar[str.charAt(i)]) {
        oChar[str.charAt(i)] = 0
    }
    oChar[str.charAt(i)] += 1
}
//  用于存储最大的字符
let mostChar;
//  用于存储重复最多的字符的重复次数
let maxMostCharSize=0;
for (let key in oChar) {
    if (oChar[key] > maxMostCharSize) {
        mostChar = key;
        maxMostCharSize = oChar[key]
    }
}
console.log(mostChar)

  当时回答:先使用字符串的分割方法,然后for循环返回的数组,统计数组中同一字符出现的次数

  2. 以下代码会打印出啥

   var a = 0;
   function m1(){
       console.log(a)
   }
   function m2() {
    var a = 1;
    console.log(b);
    var b = 5;
    console.log(b)
    m1()
    console.log(a)
   }
   m1()
   m2()

  答案:0,undefined,5,0,1
  当时回答:0,undefined,5,1,1。m1不会使用m2函数中的变量a是因为m1不是在m2中定义的?

  3. 以下代码为什么会在打印出undefined 

   <script>
    console.log(typeof aa)
   </script>
   <script>
    function aa() {
     console.log(b)
    }
   </script>

    答案:在两个script中,下面的script标签的函数不会提升到上面的script标签中

    当时回答:不知道,猜测是两个script标签的问题

  4. promise中设置一个settimeout(()=>{},0),在其后设置一个settimeout(()=>{},0),哪个先执行

  答案:promise的先执行,因为promise写在上面,所以它先进入消息队列,按照队列的先进先出原则,当然是promise中的settimeout先执行

  当时回答:写在上面的先执行,不过面试官诧异的表情让我十分怀疑自己理解错了Promise...回来做了下测试,结果是我所说的这个啊,也许是我把题目听错了吧

  5. 使用正则检测一个手机号

  答案:今天太晚了明天写

  当时回答:不熟悉正则,不过可以使用Number(input.value)+input.value.length来判断是不是数字

记今天的面试

原文:https://www.cnblogs.com/FreezeNow/p/12127858.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!