记中治赛迪资格考试
邵预鸿 Lv5

2021年3月2日,有幸参加公司组织的关于中治赛迪公司的资格考试。

公司地址位于重庆市金童路,办公环境特别好,公司气氛融洽。

本次参加的是前端工程师开发岗位,共分两轮,一轮笔试,一轮面试。面试为3位面1人,共分3组,同时面试。

面试过程中问题如下

  • const定义的对象为什么能修改

答:对象是引用类型的,const定义的对象t中保存的是指向对象t的指针,这里的“不变”指的是指向对象的指针不变,而修改对象中的属性并不会让指向对象的指针发生变化,所以用const定义对象,对象的属性是可以改变的。

  • sessionStroge什么时候能在新标签页中共享数据?

答:这里我之前没有注意过,特意写了一个事例,最后总结为当手动打开一个标签页时,sessionStroge不能共享数据,但是使用标签,或者 **window.open **

可以共享数据

  • vue3.x ref与reactive区别

答: ref面向基本数据类型,rective面向复杂数据类型。但是ref可以接收复杂数据类型,此时vue会转为rective数据

  • 关于闭包的缺点

这个问题当时把我问蒙了,因为平时都会问”为什么用闭包,闭包的作用什么的”,结果问这个问题。

答:闭包会常驻内存,增加内存开销。使用不当会造成内存泄露

  • http与https区别

  • 判断数据类型的几种方法

答: instanceof constructor typeof Object.prototype.toString.call(数据)

  • .bind()方法会返回什么样的值
  • 关于for 与map的性能问题

本次采用遍历1000w数据,每个值*9,并返回新数组,参考代码如下

1
2
3
4
5
6
7
8
9
//map遍历
let arr1 = [...new Array(10000000).keys()];
let arr2 = arr1.map((item,index,newArray)=>{
return item * 9;
});

for(var i=0,length=arr1.length;i<length;i++){
arr1[i]*=9;
}

使用9次执行时间(单位ms)对比如下:

  • for map
    4435 5125
    4522 5236
    4606 4921
    4405 4666
    4415 4686
    4574 4532
    4495 4580
    4505 4608
    4086 4664

    总结: 当数据量小时,两者之间并没有多少区别。当数据比较大时,for遍历 数据略快于map遍历 .

反思

这次考试完后应当反思几点。1.还是没能特别的落落大方,多少有些口吃。 2. 许多问题还是不知道,需要不断学习。3.我发现在回答问题时,第一句话总喜欢以”嗯~……”开头,多少有点不自信的感觉,这点一定要改。

最后希望自己能早日完成我想做的几件事。

  • 本文标题:记中治赛迪资格考试
  • 本文作者:邵预鸿
  • 创建时间:2021-03-03 21:09:32
  • 本文链接:/images/logo.jpg2021/03/03/记中治赛迪资格考试/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!