海康威视财务面试题及答案
1. 闭包是什么?有什么优点和缺点?
2. css中怎么使盒子上下居中(面试官说水平居中太简单了)?
3. js中本地存储有哪些?有什么不同?
4. cookie中的session了解吗?
5. 跨域了解吗?
6. this的指向问题?
7. vue使用的UI框架?
8. npm中的工具了解过吗?(yarn)
9. Node.js了解吗? 
详细讲一下项目?后端调用?
1. 闭包是什么?有什么优点和缺点?
    解答:闭包是指有权访问另一个函数作用域中的变量的函数。
   优点:① 能够读取函数内部的变量;②让这些变量一直存在于内存中,不会在调用结束后被垃圾回收机制回收;
   缺点:由于闭包会使用函数中的变量存在在内存中,内存消耗很大,所以不能滥用闭包;解决的办法是退出函数之前,将不使用的局部变量删除;
2.  css中怎么使盒子上下居中(面试官说水平居中太简单了)?
解答:方法一:
    设置垂直居中的时候要注意,先给祖先元素`html`和`body`的高度设置为100%(默认是0);并且清除默认样式(`margin`和`padding`都设置为0,否则浏览器就会出现滚动条),然后给子盒子相对定位和位移`position:relative;top:50%;`,然后减去本身宽度的一半即可(`margin-top:负自身高度的一半` // `transform:translateY(-50%)` 向上偏移自身高度的一半;
    注意:top、bottom、left、right的百分比值都是相对于包含块的高度、宽度的;
方法二:
    弹性盒子。给父元素设置`display:flex; align-items:center;`设置body里的元素垂直居中;(`justify-content:center;`定义body里的元素水平居中)
3.  js中本地存储有哪些?有什么不同?
`cookie`、`localStorage`、`sessionStorage`;
   相同点:都保存在浏览器端;
   不同点:
   ①传递方式不同
    `cookie`数据始终在同源的http请求中携带(即使不需要),即`cookie`在浏览器和服务器间来回传递。
    `sessionStorage`和`localStorage`不会自动把数据发给服务器,仅在本地保存。
   ②数据大小不同
    (`cookie`数据还有路径(path)的概念,可以限制cookie只属于某个路径下。)
    存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带`cookie`,所以cookie只适合保存很小的数据,如会话标识。
    `sessionStorage`和`localStorage` 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。
   ③数据有效期不同
    `sessionStorage`:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;
    `localStorage`:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;
sessionstorage和localstorage    `cookie`只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。
   ④作用域不同
    `sessionStorage`不在不同的浏览器窗口中共享,即使是同一个页面;
    `localStorage `在所有同源窗口中都是共享的;
    `cookie`也是在所有同源窗口中都是共享的。
4.  cookie中的session了解吗?
 `cookie`和`sessiom`是两种保持会话状态的方法。
    cookie就是指客户端在向服务端发起请求的时候,服务端会在进行response的时候给当前客户端的一小段文本信息,并保存在当前的客户端的浏览器中,这一小段cookie文本信息也就是这个客户端去访问服务端的通行证,有了这个通行证,以后当这个客户端再去访问服务端的时候,服务端便知道是谁拿着通行证去进行访问了。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。