乐趣区

前端面试题小结

前几天也是有人问我的一些问题,我觉得还是挺有了解价值的,也是一些平时开发可能比较会忽略的问题。别的不多说,直接开门见山:
1.post 和 get 的区别?
我们都知道 GET 和 POST 是 HTTP 请求的两种基本方法。我相信如果有人问到你这个问题,可能很多人都能说出一二。如果面试你去说一些‘标准答案’,你会发现面试官会微笑,究竟是为什么呢?其实他们之间最大的区别是:1.Get 产生一个数据包,post 会产生两个数据包。详细的意思就是:对于 get 来说,浏览器会把 http header 和 data 发送出去,服务器响应。post:浏览器会先把 header 发送出去,服务器响应 100 continue,再把 data 发送出去,服务器响应。
2. 前端图片上传需要注意什么?
我们都知道图片是二进制的,如果每次图片的下载始终都要向服务器发出请求,要是图片的下载不用向服务器发出请求,而可以随着 HTML 的下载同时下载到本地那就太好了,而 base64 正好能解决这个问题。具体图片怎么转 base64 其实网上也有很多方式可以去看看。
3. 如果你 1s 点击按钮 100 下,我们该怎么处理 (优化)?
这个问题也就是关乎到防抖和节流,防抖:立即执行版和非立即执行版。立即执行版:触发事件后函数会立即执行,然后 n 秒内不触发事件才能继续执行函数的效果 非立即执行版:触发事件后函数不会立即执行,而是在 n 秒后执行,如果在 n 秒内又触发了事件,则会重新计算函数执行时间。节流:连续触发事件但是在 n 秒中只执行一次函数。相当于就是一个阀门,到时间才会打开,我不管你怎么操作。具体实现可以搜索一些网上资源进行学习。
4.j 实现文件拷贝
本人听了之后也是有点蒙蔽,因为确实也用过,可以说少之又少。这个问题大家也是可以去关注一下。
5. 如何解决不同终端的适配问题
弹性盒子 (flex),非常不错的选择
6.*redux 的运行流程
7.*react 生命周期
8.* 生命周期优化
9.* 解释 react 中虚拟 DOM, 存在的好处
10.*jsonp 为什么可以解决跨域问题
11.* 地址栏输入 url 流程
总结: 初级阶段是:会用。要去追究一些底层原理问题,会让你更加加深对对知识的掌握。你要有所提升的话还是要去熟练掌握一些知识,毕竟 JS 是入门以及必须掌握的,而且也是很强大。学无止境吧。大家也可以一起讨论一下,以上问题如果不太清楚,我也可以为大家解答。

退出移动版