2022恒生电子前端笔试

大致题型:

10道计算机网络基础题(不定项选择题)
5道前端题(不定项选择题)
3道填空题
两道编码题

个人觉得问得有点偏,计算机基础比js,css这些考得比重大很多
有些题没记全,脑子不是印刷机,当经验看看吧

非编程题:

选择题:
1.关系数据库有哪几种?

关系型数据库是由多张能互相联接的二维行列表格组成的数据库。 当前主流的关系型数据库有Oracle、DB2、Microsoft SQL Server、Microsoft Access、MySQL

2.css权值计算?

优先级由高到低

内联样式(style=“ ”)
ID选择器(id=" “)
伪类(如:hover)
属性选择器 (如:a[href] {color:red;})
类选择器 (class=” ")
元素选择器 (p{})
通用选择器(*)

!important 规则例外,会覆盖CSS的任何声明,与优先级毫无关系.

2022恒生电子前端笔试_第1张图片

  1. 内联样式表的权值最高 1000;
  2. ID 选择器的权值为 100
  3. Class 类选择器的权值为 10
  4. HTML 标签选择器的权值为 1
  5. 通配符选择器:0

计算权值:统计不同选择器的个数,每类选择器的个数乘以相应权值,把所有的值相加得出相应选择器的权值

练习一下
#div .parent span #child 
权值:100*2+10+1=211

3.重排引发条件?

1.页面初始渲染,这是开销最大的一次重排
2.添加/删除可见的DOM元素
3.改变元素位置
4.改变元素尺寸,比如边距、填充、边框、宽度和高度等
5.改变元素内容,比如文字数量,图片大小等
6.改变元素字体大小
7.改变浏览器窗口尺寸,比如resize事件发生时
8.激活CSS伪类(例如::hover)
9.设置 style 属性的值,因为通过设置style属性改变结点样式的话,每一次设置都会触发一次reflow
10.查询某些属性或调用某些计算方法:offsetWidth、offsetHeight等,
总结一下:改变尺寸,宽高,边框,内容,位置都会引起重排。记住这些应付选择题没问题。

4.OSI各种协议?
2022恒生电子前端笔试_第2张图片
以上都是我我写了,但是心理没底的选择题。其他选择题忘记了。不好意思大家。
考了很多计算机网络原理题其实,和前端有关的只有5道选择题。


编程题1:

题目:
写一个使下面三个promise可以串行执行的函数。

new Promise1((resolve, reject) => {
  resolve('成功了')
})

 new Promise2((resolve, reject) => {
  resolve('success')
})

 new Promise3((resolve, reject) => {
  resolve('promise3')
})



答案:

Promise.all([promise1, promise2, promise3]).then((values) => {
console.log(values);
});

哎呀!当时我没想起来,写了个递归函数。呜呜uu


编程题2(算法):

题目:
【1,52】范围内的52个正整数,随机分配到四个数组a,b,c,d。四个数组的数不允许重复

答案:

cutArray(arry)
{
let a=[],b=[],c=[],d=[];
while(a.length<13)
{
let i=Math.floor(Math.random()*arry.length+1);//产生随机数组下标。为啥不写52,而是写arry.length是因为arry是变化的,看下面代码。
a.push(arry[i]);
arry.splice(i,1);//改变arry,将已分配的数据删除
}

while(b.length<13)
{
let i=Math.floor(Math.random()*arry.length+1);
b.push(arry[i]);
arry.splice(i,1);
}
while(c.length<13)
{
let i=Math.floor(Math.random()*arry.length+1);
c.push(arry[i]);
arry.splice(i,1);
}
d=arry;
console.log(a);
console.log(b);
console.log(c);
console.log(d);

}

你可能感兴趣的:(面试,前端,面试)