前端面试如何出彩
- 1、原型链和作用域链说不太清,主要表现在寄生组合继承和extends继承的区别和new做了什么。
- 2、推荐我的两篇文章:若川:面试官问:能否模拟实现JS的new操作符、若川:面试官问:JS的继承
- 3、数组构造函数上有哪些方法(Array.isArray、Array.from、Array.of),数组实例有哪些方法,如何准确的判断数组等都不知道。数组、字符串、对象等API需要熟记于心。推荐我之前的一篇回答 若川:一年内的前端看不懂前端框架源码怎么办?
- 4、vue生命周期(包含子孙组件的情况)
- 5、vue一些高级特性(比如自定义v-model、插槽、mixin、keep-alive、动态组件、异步组件,$nextTick)没有用过,关键简历上写的精通vue 。
- 6、vue-cli 2和vue-cli3(4)分不清。
- 7、不知道用什么loader解析的vue单文件组件。
- 8、候选人线上项目有sourcemap,可以直接看到代码,但不知道如何配置关掉。
- 9、不知道是用的什么webpack插件生成的html页面。
- 10、关于vue-cli 推荐两篇文章若川:分析vue-cli@2.9.3 搭建的webpack项目工程、vue-cli 源码分析 (vue-cli3)
- 11、vuex、vue-router大概原理说不清。
- 12、axios怎么使用拦截器,是不是知道支持node和浏览器端发送请求,用的什么发送的请求等等。
- 13、推荐我的两篇文章若川:学习 vuex 源码整体架构,打造属于自己的状态管理库、若川:学习 axios 源码整体架构,打造属于自己的请求库
- 14、使用了很多UI组件库,但对如何发布到npm不知道、也没有了解button等简单组件的实现。
- 15、用koa写了一些项目,但对koa中间件如何实现的,不了解,这些源码较少的库,其实可以深入学习下,收益很大。若川:学习 koa 源码的整体架构,浅析koa洋葱模型原理和co原理
- 16、用了redux,对redux中间件原理不了解。推荐看这篇若川:学习 redux 源码整体架构,深入理解 redux 及其中间件原理
亮点可以写:
- 1、假设你们公司开发小程序没有区分环境,你做了,还写了一个简单的脚手架,这虽然是很小的事但还是能体现你的价值。
- 2、比如你们公司没用ESLint、形成了一套标准,你推动各个项目组都使用了,你升级了webpack版本,优化了打包速度等等。这时你又学习到了ESLint 和webpack基本原理。
- 3、比如小程序、PC端、H5端等、线上问题排查定位困难,你引入了免费的sentry错误监控,来解决问题,保证线上稳定性。(引入sentry其实挺简单的),通过这件事,你学习总结了错误监控原理,都是亮点。关于sentry原理推荐我的这篇文章若川:学习 sentry 源码整体架构,打造属于自己的前端异常监控SDK
- 4、比如项目有登录功能,你研究后知道如何实现的,另外又自己总结了几种常见登录方案的优缺点。比如jwt和session等。
- 5、比如你们可能每次都带薪打包编译项目,你引入了持续集成CI,都是体现你的价值。
- 6、比如你们可能项目提交git commit message信息比较乱,你引入了工具校验message,生成changelog、使用了release-it等等,虽然比较容易, 但你有意识的去做了,也是亮点。
- 7、根据业务场景和统计需求。引入了埋点(比如友盟)等,了解统计用户行为和浏览器等设备信息,帮助公司某些功能开发时做一些决策,而且研究了其原理等。
- 8、假设你开发了很多组件,做成了组件库,但别的项目也要引用,这时候就需要私有化部署。但还是有问题,如果组件库一修改,其他引用的多个项目都要编译然后重新部署上线?是不是可以考虑CDN之类的,CDN可能不稳定,那么又如何兜底。这些思考起来,然后去解决沉淀就是你的收获和亮点。
- 9、假设每次新建页面都需要复制粘贴很多文件,然后替换注释(作者信息),那么是不是可以写个简单功能,根据已有模板,生成新页面的文件替换作者信息等等。
- 10、假设你们做了很多报表,大部分都是类似,是不是可以考虑做成拖拽快速生成报表。
- 11、前后端分离,接口都写在文档里,是不是可以直接写的文件里,然后方便数据mock,然后自行研究学会了数据mock的原理等。
- 总之就是发现问题,解决问题,总结问题,推广给他人。
这上面举的例子其实就能超过挺多2年经验的人,但学会这些其实不需要太多时间。
先写这么多吧~之后更新。
关于如何面试准备面试,可以看看这个慕课网课程笔记:前端跳槽面试必备技巧
如果是面试阿里等大厂可参考磐冲大佬的这篇文章磐冲大佬:我在阿里招前端,我该怎么帮你?
总之就是会用,对常用技术有点研究,且有点亮点。其实就是不停留在只会使用的层面,重基础懂原理,知其然知其所以然。
简历上表现出这三点扩展开来写,其实写一页简历还是可以的。
喜欢的朋友记得点赞、收藏、关注哦!!!
相关文章:
前端面试如何出彩
1、原型链和作用域链说不太清,主要表现在寄生组合继承和extends继承的区别和new做了什么。2、推荐我的两篇文章:若川:面试官问:能否模拟实现JS的new操作符、若川:面试官问:JS的继承 3、数组构造函数上有哪些…...
Linux 切换用户的两种方法
sudo -su user1 与 su - user1 都可以让当前用户切换到 user1 的身份执行命令或进入该用户的交互式 Shell。但它们在权限认证方式、环境变量继承和 Shell 初始化过程等方面存在一些差异。 权限认证方式 su - user1 su 是 “switch user” 的缩写,默认情况下需要你输…...
Spring Boot 3 中Bean的配置和实例化详解
一、引言 在Java企业级开发领域,Spring Boot凭借其简洁、快速、高效的特点,迅速成为了众多开发者的首选框架。Spring Boot通过自动配置、起步依赖等特性,极大地简化了Spring应用的搭建和开发过程。而在Spring Boot的众多核心特性中ÿ…...
Vue实现留言板(实现增删改查)注意:自己引入Vue.js哦
代码: <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><scri…...
IDEA创建Spring Boot项目配置阿里云Spring Initializr Server URL【详细教程-轻松学会】
1.首先打开idea选择新建项目 2.选择Spring Boot框架(就是选择Spring Initializr这个) 3.点击中间界面Server URL后面的三个点更换为阿里云的Server URL Idea中默认的Server URL地址:https://start.spring.io/ 修改为阿里云Server URL地址:https://star…...
读取电视剧MP4视频的每一帧,检测出现的每一个人脸并保存
检测效果还不错,就是追踪有点难做 import cv2 import mediapipe as mp import os from collections import defaultdict# pip install msvc-runtime# 初始化OpenCV的MultiTracker # multi_tracker = cv2.MultiTracker_create() # multi_tracker = cv2.legacy.MultiTracker_cre…...
HTML前端开发-- Iconfont 矢量图库使用简介
一、SVG 简介及基础语法 1. SVG 简介 SVG(Scalable Vector Graphics)是一种基于 XML 的矢量图形格式,用于在网页上显示二维图形。SVG 图形可以无限缩放而不会失真,非常适合用于图标、图表和复杂图形。SVG 文件是文本文件&#x…...
使用Allure作为测试报告生成器(Java+Selenium)
背景 JAVA项目中原先用Jenkinsseleniumselenium grid来日常测试UI并记录。 问题 当某一个testSuite失败时,当需要确认UI regression issue还是selenium test case自身的问题,需要去jenkins中查log,一般得到的是“Can not find element xxx…...
RocketMQ面试题合集
消费者获取消息是从Master Broker还是Slave Broker获取? Master Broker宕机,Slave Broker会自动切换为Master Broker吗? 这种Master-Slave模式不是彻底的高可用模式,他没法实现自动把Slave切换为Master。在RocketMQ 4.5之后&…...
Qt初识_对象树
个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 Qt初识_对象树 收录于专栏【Qt开发】 本专栏旨在分享学习Qt的一点学习笔记,欢迎大家在评论区交流讨论💌 目录 什么是对象树 为什么要引…...
axios的get和post请求,关于携带参数相关的讲解一下
在使用 Axios 发送 HTTP 请求时,GET 和 POST 请求携带参数的方式有所不同。以下是关于这两种请求方法携带参数的详细讲解: GET 请求携带参数 对于 GET 请求,参数通常附加在 URL 之后,以查询字符串的形式传递。 直接在 URL 中拼接…...
Vue前端开发-路由其他配置
在路由文件中,除了跳转配置外,还可以进行路径重定向配置,如果没有找到对应的地址,还可以实现404的配置,同时,如果某个页面需要权限登录,还可以进行路由守卫配置,接下来,分…...
框架建设实战7——定时任务组件
在金融系统中,或者其他对账系统里,往往离不开分布式定时任务。用来做查证或者重试处理。 分布式job目前一般有如下三种: 1.elastic job 当当出品,比较老牌。新公司用的应该不多了。 2.xxl-job 个人开源项目。便于二开;有简洁的后管配置界面,方便接入。 3.powerjob …...
mybatis 整合 ehcache
pom.xml <!-- ehcache依赖 --><dependency><groupId>org.mybatis.caches</groupId><artifactId>mybatis-ehcache</artifactId><version>1.1.0</version></dependency>ehcache.xml <?xml version"1.0" en…...
【PlantUML系列】用例图(三)
目录 一、组成部分 二、典型案例 一、组成部分 参与者(Actors):使用关键字 actor 后跟参与者的名称。用例(Use Cases):使用关键字 usecase 后跟用例的名称和编号(可选)。系统边界…...
发送请求时遇到了数据库完整性约束错误 1048 Column ‘platform‘ cannot be null
可以这样解决 在 Vue 2 中封装接口请求时,确保每次请求都包含 platform Header 参数的最佳实践是通过创建一个全局的 Axios 实例,并为这个实例设置默认的 Header。这样可以确保所有通过该实例发送的请求都会自动包含 platform 参数。此外,你…...
三菱FX3U模拟量产品的介绍
FX3u可编程控制器模拟量产品包括:特殊适配器、特殊功能模块的连接 1、连接在FX3U可编程控制器的左侧。 2、连接特殊适配器时,需要功能扩展板。 3、最多可以连接4台模拟量特殊适配器。 4、使用高速输入输出特殊适配器时,请将模拟量特殊适配器连…...
pdf转图片
目录 pdf2image库 PyMuPDF库 python-office库 pdfplumber库 pdf2image库 安装:pip install pdf2image 使用时会报错:pdf2image.exceptions.PDFInfoNotInstalledError: Unable to get page count. Is poppler installed and in PATH? 需要安装 po…...
Go 协程上下文切换的代价
在 Go 语言中,协程(Goroutine)是一种非常轻量级的并发执行单元,设计之初就是为了简化并发编程并提高性能。协程的上下文切换被认为是非常高效的,但是它的真正性能优势需要我们深入了解其背后的机制。 本文将深入探讨 …...
HTTP 持久连接(长连接)
HTTP 持久连接(长连接) HTTP 持久连接(HTTP Persistent Connections),也常被称作 HTTP 长连接,是 HTTP 协议中的一种重要特性,以下是关于它的详细介绍: 一、基本概念 在传统的 HTT…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?
Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以? 在 Golang 的面试中,map 类型的使用是一个常见的考点,其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
现有的 Redis 分布式锁库(如 Redisson)提供了哪些便利?
现有的 Redis 分布式锁库(如 Redisson)相比于开发者自己基于 Redis 命令(如 SETNX, EXPIRE, DEL)手动实现分布式锁,提供了巨大的便利性和健壮性。主要体现在以下几个方面: 原子性保证 (Atomicity)ÿ…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
