飞书一面
* 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
- 首页
- 2021年
- 基础知识
- 同源策略
- 跨域
- css
- less
- scss
- reset
- 超出文本显示省略号
- 默认滚动条
- 清除浮动
- line-height与vertical-align
- box-sizing
- 动画
- 布局
- JavaScript
- 设计模式
- 深浅拷贝
- 排序
- canvas
- 防抖节流
- 获取屏幕/可视区域宽高
- 正则
- 重绘重排
- rem换算
- 手写算法
- apply、call和bind原理与实现
- this的理解-普通函数、箭头函数
- node
- nodejs
- express
- koa
- egg
- 基于nodeJS的全栈项目
- 小程序
- 常见问题
- ec-canvas之横竖屏切换重绘
- 公众号后台基本配置
- 小程序发布协议更新
- 小程序引入iconfont字体
- Uni-app
- 环境搭建
- 项目搭建
- 数据库
- MySQL数据库安装
- 数据库图形化界面常用命令行
- cmd命令行操作数据库
- Redis安装
- APP
- 控制缩放meta
- GIT
- 常用命令
- vsCode
- 常用插件
- Ajax
- axios-services
- 文章
- 如何让代码更加优雅
- 虚拟滚动
- 网站收藏
- 防抖节流之定时器清除问题
- 号称破解全网会员的脚本
- 资料笔记
- 资料笔记2
- 公司面试题
- 服务器相关
- 前端自动化部署-jenkins
- nginx.conf配置
- https添加证书
- shell基本命令
- 微型ssh-deploy前端部署插件
- webpack
- 深入理解loader
- 深入理解plugin
- webpack注意事项
- vite和webpack区别
- React
- react+antd搭建
- Vue
- vue-cli
- vue.config.js
- 面板分割左右拖动
- vvmily-admin-template
- v-if与v-for那个优先级高?
- 下载excel
- 导入excel
- Echart-China-Map
- vue-xlsx(解析excel)
- 给elementUI的el-table添加骨架
- cdn引入配置
- Vue2.x之defineProperty应用
- 彻底弄懂diff算法的key作用
- 复制模板内容
- 表格操作按钮太多
- element常用组件二次封装
- Vue3.x
- Vue3快速上手(第一天)
- Vue3.x快速上手(第二天)
- Vue3.x快速上手(第三天)
- vue3+element-plus搭建项目
- vue3
- 脚手架
- vvmily-cli
- TS
- ts笔记
- common
- Date
- utils
- axios封装
- 2022年
- HTML
- CSS基础
- JavaScript 基础
- 前端框架Vue
- 计算机网络
- 浏览器相关
- 性能优化
- js手写代码
- 前端安全
- 前端算法
- 前端构建与编译
- 操作系统
- Node.js
- 一些开放问题、智力题