🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
飞书一面 * to B后台项目系统,说说如何设计权限 * 说说https,证书是怎么保证安全的 * 什么是闭包?垃圾回收机制中,对被闭包使用的变量为什么没有回收? * 下面输出分别是: ``` const b = 1 var a = 2 if(window.b){ var c = 15 a = 5 } console.log(b) console.log(a) console.log(c) ``` ``` new Promise((resolve,reject)=>{ reject('错误') }).then(res=>{ console.log(res,1) },err=>{ console.log(err,2) }).then(res=>{ console.log(res,3) },err=>{ console.log(err,4) }) // 打印分别是? ``` * 算法: ``` createArray(null,1) // [null] createArray('o',2,2) // [ [ 'o', 'o' ],[ 'o', 'o' ] ] ``` 从某些方面去考察: 问题的深度,刨根到底的原理 比如:什么是递归?引出变量,垃圾回收机制,为什么递归中的变量没被收回?计数清零或者标记等方式如何实现? 比如:js,延伸至const let和var定义变量,与window有什么关系?如const a = 1 window.a ?对promise的执行,到原理 比如:谈论https,延伸到证书,如何保证安全的?证书中有什么?加密方法延伸? 比如:浏览器渲染原理深入 比如:计算机思维(算法题) 嘉立创 1、给p绑定事件,点击那个p就输出那个p的下标 `<div id="container"><p></p><p></p><p></p></div>` ``` var dom = document.getElementById("container")   var nodeList = dom.children   // 注意i的定义,这里点击是在循环结束之后,所以结束之后i=nodeList.length了   // 处理方式:let 或者闭包等方式   for (let i = 0; i < nodeList.length; i++) {     nodeList[i].addEventListener("click",function(e){       console.log(e,i)     })   } ``` 2、对象深拷贝 3、居中显示 `<div><span>123</span></div>` 4、ajax同步与异步区别,如何解决跨域问题 5、一个试管10毫升,一个7毫升,一个3毫升,请倒出5毫升的 A10-B7-C3 A分别到B和C,此时A空 B到C,此时B剩余1,C则是满 C到A中,此时A中9,(注意此时B剩下1) 把B导入C中,C剩余1,B剩余0 把A导入B中,A剩余2 把B中到C中,测试B剩余5,C1+2剩余3 将C导入A中,刚好5 6、如下图一个房子中四个人有两个白色两个黑色帽子,每个人看不见自己的帽子,也不能摘下看,AB有一个不透明墙相隔,A面向右边,BCD面向左边,后面的人可以看到前面的人的帽子颜色,D看到CB,C看到B,等待一段时间后,有一个人能正确猜出自己的帽子颜色,他是有依据的?依据是? 理由:首先D能看到最多的帽子2顶,如果BC是同一种颜色的,则D的是另一种颜色,便能立刻说出来,因为D没有立刻说出自己帽子的颜色,所以大家(ABCD)就知道BC不是同一种颜色,而C能看到B,颜色与B不同,所以C猜中了自己帽子的颜色. ![](https://img.kancloud.cn/48/08/48080d0c1f29ab9274a9a70caae66cc5_567x292.png) 7、块级,行内元素分别有哪些? 8、px、rem和em区别 px:是固定长度单位,不随其它元素的变化而变化 em:相对(父级)长度单位,一般浏览默认1em=16px,他会随腹肌元素的属性变化而变化 rem:是css3新增一个相对长度单位,是为了补充em缺点,rem相对根目录html元素,所以设置html标签上的文字大小,文档中的字体大小则会以此参照标准。 ![](https://img.kancloud.cn/3d/5b/3d5b758f3ba7b0409865d760b23708de_635x751.png) https://mp.weixin.qq.com/s/c1ApeYWABb4ZCoslUO89zw