千锋教育web前端高频面试题视频教程,kerwin大话前端面试秘籍(附答案)
2023-07-20 20:30 作者:bili_74894150962 | 我要投稿

1.数组去重
var arr=[1,2,3,4,5,6]
var myset=new Set(arr)
var mya =Array.from(myset)
2.[a,b]flat():可以将多维数组进行扁平化
flat会移出数组的空项
3.线程和进程 的区别
进程是资源分配的最小的单元,线程是代码执行的最小单元,一个应用程序可以开启多个进程,进程事件数据不共享,一个进程可以开启多个线程,线程之间的数据是可以共享的,所以多线程的情况下,往往要考虑的是执行顺序的问题
4.http和https区别和那个更安全
http明文传输,数据没有加密,安全性较低,https(http+ssl),数据传输是加密的,安全性要好一些,http的速度要比https要更快一些,http默认80端口,https默认443接口
5.事件循环
所有的任务同步任务在主线程上执行,形成一个执行栈
主线程之外,还存在一个"任务队列",只要异步任务有了结果,就在任务队列之中放置一个事件
一旦执行栈栈中的所有同步任务执行结束,系统就会读取任务队列,拿到队列的第一个任务,进入执行栈,开始执行
主线程从任务队列中读取事件,这个过程是循环不断的,所有整个的这个运行机制为Evenet Loop(事件循环)