Records
面试相关
面试相关
现场编程
记录
- 常见的垂直居中方案(不定长文本居中)
- 深拷贝函数思路(循环引用)
- UMD、ESM 各自的优缺点(异步加载)
- UMD 格式兼容浏览器和 NodeJS 端加载的原理
- 怎么取消一个请求/Promise
- 多栏测试
- 乾坤坑(nginx 整合、sentry )
- 自研组件库怎么做起来的,版本怎么管理
- 怎么解决跨技术栈的组件调用问题
- 怎么使用 git 的(git 冲突)
- 产品用户体验是指
- 研发工具是指
- 最近读过什么分享一下
- 平时从什么渠道学习前端
- 简历上的字
- 垂直居中
- Audio CSS 阴影(ConicGradient)
- 不同预处理器之间的差异
- Sass 不同版本的差异
- 在你的理解中闭包是什么
- 嵌套数组怎么拍平
- 在项目中使用 TypeScript 时碰到过哪些问题
- Vue Diff
- 如果你是面试官你会问我什么
- 时钟课堂碰到了什么难点
- 选型是怎么考虑的
- OPT 适配不同的 echarts 图表是指什么
- 定制 Ueditor 内嵌秀米编辑器是指什 么,图
- 看过什么项目的源代码
- 详细讲下权限
- 链接打不开
- 有些错别字
- 居中方案,flex、其它布局没试过,知道不等比例缩小
- JS 比较新的 API、ES2015
- JS 不同模块,不了解
- 不同 TS 配置项,不了解 Partial 和配置项
- Vue2 数组响应式怎么处理的、
- Vue3 什么东西不能被 reactive,为什么
- 写过爬虫么,如何设计
- 音视频的难点、过场动效()、视屏号首图
- 字体文件压缩、1/10 体积、哈夫曼变慢
- 正则
- 设计过低代码平台么,具体模块
- 能否了解一下前端字体压缩专利
- iPhone 安全区是怎么解决的、异形屏怎么办
- 压缩算法原理
- 链表,快慢指针
- 深拷贝、判断类型几种方法、循环引用
- 职业规划、定位
- 低代码编辑器 前后端
- 毕业网页设计、那会儿 Angular,jQuery
深刻理解 Web 标准,良好的编码习惯,较强问题定位能力,能够分解各项工作流程。
- 技术栈:PC、小程序、Elec、Weex(混合开发)、Vue3
- 居中:trans、flex、grid、Canvas
- 模块:require 是什么、ESM 是什么?
- TS:封装 Axios,优缺点
- 工业流水线:拼元件、分享出去看、告警,资产
- 流水线:技术难点,没有印象
- 低代码:页面 JSON、
- 开发常用组件:命令行初始化、开发、上传、构建、测试
- 线上碰到问题怎么处理:本地能复现需要后端支持
- 后期上传到 npm,但是要 install 后才能更新。如果要解决怎么处理:
- JSON、宽高层级、类型
- 碰到问题:多层级嵌套;
- BI 不好解决的问题:难点没有;
- 软件设计、代码风格;
- 其它项目;
- 定位:配合、希望独立解决问题、
⼤流量 C 端活动项⽬的动画研发、优化、异常监控有经验
React 为主。
- 演示视频,京东农场(入口下掉了)
- 模块、ESM
- 垂直居中方法,字号、字体
- 机器人页面,背景(OK)
- Grid 栅格
- B、C 差异,业务流程、业务场景
- 对技术选型的理解
- 数组转树(根节点)
- 实现 git diff(如果是文本,一行比较还是逐字符比较)
- Vue2 Diff:同级比较
- React Fiber 是啥、16ms、由谁中断,核心实现
- 弹窗队列实现,mapSeries
- ⿊灰产防刷(黑灰产防刷)
- 新⽼业务接⼊移除,版本控制、分包管理、代码分⽀管理
- 封装公共组件:Search、表格(动态表单 key)、看实际场景
- Code Review:业务流程、金额校验
简历问题:
- 精通 jQuery,今年的更新的内容
- 擅长前端项目架构和组件封装
- SCRM 项目,脚手架,如果非脚手架,Linter、TS 等工具是怎么维护的
- 西瓜视频,常见视频编码,不同 profile 的区别
- 云湾基金,升级为 Vue 的思路和难点,
- 依赖不支持
- 分包
- Vue3
- 低码项目,模板能无限嵌套原理
- 路由,
- CRM 项目,大量组件带来的大量文档的处理思路,
- 处理文档 Markdown,
- joh-ui 组件库
- 怎么做的,二次封装 elment-ui,
- elment-ui 暗黑色主题,CSS 配置,公共变量,
- sumodule monorepo 相比,
- 时间较久了,如果做新的组件库会考虑什么不同的
- Vue3,vapper
- Vue2 和 Vue3,性能,
- 主包项目大小
- 前端
- 掘金、知乎
简单的编程题目:
- 获取数组子集:https://play.vuejs.org/#eNp9kstuwjAQRX9l5A0PUaKWHQWktgK1XbRV2x1hAckAoY5t2WMeivLvHYcGWFTs4rn3zpxxXIgHY7pbj6IvBi6xmSFwSN6MYpXlRluCwuKyhKXVOTTY2IhVrBKtHEGmjCcYwvS2A3cd6M1qQXs6KhxtThtrlFLDTluZNmatkI/a8JIbiTkqgklo/YwWoR2dmx+0txOvEsq04k7NFgxHUAS95Hz0N6O7nUuPrF/amxVYNWgQHZfidfhAyEPnhHwCZnNeUh+KouYtufMgujDx0dFBIrhEG0y5svBEzMMcAEut6GaH2WrNXRZapvcVG48MmZHoCOKcWmar7sZpxTdcxWKR6NxkEu27CbQuFgwRlKDN+ap2r1WNrMdOXU/WmPz8U9+4fajF4oP3QbvFWJw0mtsV0lEef73hnr9PYq5TL9l9RfxEp6UPjEfbo1cpY1/4Klr+k/xOMrX6duM9oXL1UgE0OMvKHwt+PU9XVj/j9rq9Ksf3Kcpfwsbl6g==
- 主要项目 Vue、混合开发、H5
- 居中布局,ok
- margin 塌陷,可能怎么解决,清除
- JS 模块,了解 commonjs 和 esm 模块,esm,懒执行
- 自我介绍
- tims 小程序、后台
- 设计模式
- Vue 单例、弹窗单例、emitter
- Vue 观察者模式怎么运行机制
- React
- 表单验证,校验、Map
- 403、301、302、304
- ok
- 跨域
- nginx 服务器
- jsonp
- 模块化历史
- 业务模块、JSON 导入依赖、考虑顺序、版本
- commonjs、esmodule
- import 编译时
- import
- import 使用 loader 去处理
- import JSON
- iife、
- 深拷贝如何处理循环引用
- 用变量记录
- 对象相等如何判断
- 异步控制
- co xx
- 上中下布局
- 脚手架工具
- 配置的二次封装
- vue-cli 和 tims-vue-cli 的差异:
- Webpack5 源码?
- Webpack 生命周期
- 秒级回退
- json 记录 index 相关信息
- vue - react 不同
- CSS
- 指令有什么不同,react 实现
- v-loading
- React 调度器
- 熟悉代码,所以 Vue 和 React 的优化思路
- 3 proxy
- 设计模式
- Vue watch -> Watcher 是什么?
- 十万长度的数组,性能差异?
- 三次四次
- HTTP 缓存
- HTTP 缓存和浏览器缓存
- 都用 post
- 保密性、数据量、POST
- 证件照旋转
- 元数据
- CSS ios 安装
- cals
- 1 像素
- 不同机型
- shim
- viewport
- HTML meta 头
- 头部尾骨固定,中间滚动
- 定位
- flex
- 组织 CSS 文件
- 组件-》page
- 其他
- 闭包定义
- 实现取消单个 Promise
- 抛错
- Promise 抛错和 Async 函数的区别
- 新特性
- 原子化 CSS,
- unocss 和 tailwind
- 管理 CSS 方案
- CSS Module
- URL
- DNS 解析过程
- 缓存 静态资源、HTTP 缓存
- 建立网络链接,三次握手
- HTTPs 建立安全链接,CA 防止中间人攻击
- Vue、React 技术文章
- 分享过:响应式原理
- Vue、React 的差异
- 理念不同,不可变数据
- Vue1、Vue2、Vue3 响应式数据、收集依赖
- React
- Fiber,调度的最小单位,
- 按时间片渲染,具体原理,通过宏任务让出 CPU 时间
- 手动性能优化,should
- 无界
- 对比了乾坤,
- 技术点:WebComponent、iframe
- 比较特殊:无界字体问题,toCanvas
- 应用通信机制:权限控制
- 棘手的问题:产线沟通 - 改变现有,颜色体系
- 无界印象深刻的点:WebComponent
- ShadowRealm 是什么,ES 规范
- 为什么无界
- 四个产线合成一个
- 单仓多包管理方案
- 简历
- 其他问题
简历问题:
- 喜欢研究什么类型的技术问题
- 今年使用 NodeJS 多,主要在研究啥
- Lerna 与 pnpm workspace
- 子应用依赖主应用的 API 不,能做到独立开发,怎么样部署的
- 组件的封装程度和利用率哪些指标
- 大纲树做的优化,如果组件数据量大的情况下怎么优化
- 怎么优化首屏时间的
- 怎么优化加载资源的体积的
- typescript 类型体操
- CSS Module 缺点
- 虚拟列表的实现方法
- 从 toC 官网到 toB、低代码、后台
- CSS 垂直居中
- flex
- 新 CSS 特性
- 动效组合
- lottie
- 低代码平台
- 模块功能:类似 PS 组方便
- 怎么实现模块:H5 容器父组件、
- 怎么衡量复用率:?
- 常用模块:底通、CopyRight、抽奖模块(预约,需要接口不同)、ID
- NodeJS
- Nest.js,筛选游戏列表
- 怎么部署上线,推完代码,打包,镜像打包,发布系统
- QianKun
- 不同前端框架的沙箱机制实现:兼容 IE8、Proxy(FakeWindow)
- 样式隔离:
- 主子应用加载同一个库,
- lerna 依赖提升
- React 性能优化策略
- useMemo、React.memo
- react
- Webpack
- Anylyzer
* 比如说 lambda.js、lodash
* 精简,context-replacement-plugin
* 懒加载,react-loadable
* 第三方库懒加载,lodash.js
- import('lodash.js').then
- 具体原理,chunk、webpack.then
- import('lodash.js').then
- Anylyzer
* 比如说 lambda.js、lodash
* 精简,context-replacement-plugin
* 懒加载,react-loadable
* 第三方库懒加载,lodash.js
import maps
- 介绍了几个解决的难题