阿里

5月21日

面试部门:财务钉钉

一面

面试形式:电话面试

面试时长:30分钟

面试感悟:阿里的面试是子弈小哥哥帮忙内推的,算是放在最后来了,和之前了解的一样,面试官可能会针对于你说的内容然后深挖,所以你说的每一句话都必须考虑清楚才好。一面就挂了,归根到底的原因不解释,技术还不到家,对一些知识点的理解还不够深刻。但是抛开了技术以外的原因,我认为面试时状态的不佳也是导致这次面试失败的一个原因。因为当时是晚上7点进行的电话面试,一整天都在忙于复习没有休息,并匆匆的吃了晚饭,所以到了面试那个点自身的精神状态已经非常不好了,导致面试时没有一点精神劲。举个例子,面试官问我的第一个问题,能说一下position属性有哪些值吗?我把position这个单词重复了好几遍大脑一片空白,然后说了一句:"不好意思面试官,您能把这个单词拼一下吗"...

这听起来可能特别的好笑🤭,但是是真实发生,所以也是想要告诉各位小伙伴,面试前的准备确实要充分,但是自己的状态以及心态也非常的重要,不要因为一些非技术以外的原因让自己遗憾...

position属性有哪些值分别介绍一下

  • 静态定位(static):默认的定位,也就是说网页中所有元素默认都是静态定位的,它始终会处于文档流给予的位置。
  • inherit:规定应该从父元素继承 position 属性的值。但是任何的版本的IE(包括 IE8)都不支持属性值 inherit
  • 相对定位(relative):相对于该元素在文档中的初始位置进行定位。通过 “left”、”top”、”right” 以及 “bottom” 属性来设置此元素相对于自身位置的偏移。它不会脱离标准的文档流。
  • 绝对定位(absolute):相对的元素是它最近的一个祖先,该祖先满足:position的值必须是:relative、absolute、fixed,若没有这样的祖先则相对于body进行定位 。盒子的偏移位置不影响常规流中的任何元素,其margin不与其他任何margin折叠。
  • 固定定位(fixed):生成绝对定位的元素。默认情况下,可定位于相对于浏览器窗口的指定坐标。元素的位置通过 “left”, “top”, “right” 以及 “bottom” 属性进行规定。不论窗口滚动与否,元素都会留在那个位置。但当祖先元素具有transform属性且不为none时,就会相对于祖先元素指定坐标,而不是浏览器窗口。

relative的定位规则

  • 相对于该元素在文档中的初始位置进行定位。通过 “left”、”top”、”right” 以及 “bottom” 属性来设置此元素相对于自身位置的偏移。
  • 如果他原来在常规流的默认位置改变了,那他也会跟着变位置,永远围着整个body自己原来的那一小块老地方转。所以说相对定位没有脱离文档流。

脱离文档流是会呈现什么样的效果呢?

脱离文档流,也就是将元素从普通的布局排版中拿走 ,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位。

而在CSS中,使用float和设置position:absolute都会使得元素脱离文档流。只不过它两的区别是:

使用float脱离文档流时,其他盒子会无视这个元素,但其他盒子内的文本依然会为这个元素让出位置,环绕在周围。而对于使用position:absolute脱离文档流的元素,其他盒子与其他盒子内的文本都会无视它。

常规流(文档流)是个怎样的排列关系

将窗体自上而下分成一行一行,并在每行中按从左至右的挨次排放元素。

inline-block的使用场景

  1. 要设置某些子元素在一行或者多行内显示,尤其是排列方向一致的情况下,应尽量用inline-block
  2. 希望若干个元素平行排列,且在父元素中居中排列,此时可以用inline-block,且给父元素设text-align: center
  3. inline-block可以用一排a {display: inline-block}实现横向导航栏,无论是居左的导航栏还是居右的都适用。

对于第一种和第三种情况虽然都可以使用float来实现,不过inline-block会比它好一些,原因如下:

  • 浮动导致父元素高度塌陷的问题

(望补充)

GET和POST的区别

从缓存的角度上说,GET会被浏览器主动缓存下来,留下历史记录,但是POST不会。

从编码的角度上说,GET只能进行URL编码,它只能接收ASCII字符,但是POST没有限制。

从参数的角度上说,GET一般放在URL上传递参数,POST放在请求体里,更适合传递敏感信息。

从幂等的角度上说,GET是幂等的,而POST不是。

不过据我了解的,其实GET和POST本质上都是TCP连接,并无差别。但是由于HTTP的规定和浏览器/服务器的限制,导致它们在应用过程中体现出一些不同。

还有可以从TCP的角度上说,GET请求会把请求报文一次性发出去,但是POST会分为两个TCP数据包。首先发送的是header部分,若是服务器响应100(continue),则会发送body部分,当然火狐 浏览器除外,它的 POST 请求只发一个 TCP 包。

为什么说GET会留下历史记录?

浏览器规定的

GET可以上传图片吗?

get可以通过URL传参上传图片,可以将图片转为base64格式再进行传输,不过由于get请求的参数是有大小限制的,最多不超过4kb。

GET和POST的安全性问题为什么说POST相对安全一些

首先get只能使用URL编码,post支持各种类型的编码。然后get参数在URL上,容易暴露,所以说post相对安全一些。

GET就一定是幂等的吗?

不一定,我们平常说的幂等只是一种约定,最终幂等还是不幂等取决于服务器怎么处理请求。

说一下你所知道的缓存方案

你们为什么要做这个动态表单?(业务痛点)

动态表单具体的难点在哪?

有没有了解行业内其它做动态表单这一块的

问卷网:https://www.wenjuan.com/list

功能主要是一些问卷调查的形式,例如员工培训满意度、投票评选之类的。

魔方网表:http://www.mf999.com/index.html

UI样式较旧,类似老套的系统。

你还有什么想要问我的吗?

Last Updated:
Contributors: leeguooooo