前端开发面试快速复盘,不标准的面试经验分享

壹 ❀ 引 离职前唯唯诺诺害怕没面试机会,担心找不到工作,只是没想到离职后,简历没投递,被各猎头HR电话给打爆了(外包居多)。因为目前还未系统复习,也觉得自己缺少面试经验,抱着白给的经验不要白不要的态度,上周五,本周一面了2家,大致复盘面试问到的问题,注意,本篇文章不是专业的面试题答案分享,所以一些问题还是需要大家自行考证,那么本文开始。 贰 ❀ 平安某外包 前面说了,大量面试中基本属平安,华为,oppo,vivo这四家外包居多,出于面试积累,不管是不是外包面一面也没有坏处,所以分别预约了华为
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

Mybatis支持的主键生成方案

摘要:不管使用什么框架,只要需要往数据库写入数据,主键生成问题都是头等大事。那么,mybatis是如何解决这个问题的呢 一、数据库自动生成主键   在众多的关系型数据库管理产品当中,有许多产品其自身支持自动生成主键,如MySQL、SQL Server。如果我们想把主键生成的主动权交给数据库管理,Mybatis也提供了很好的支持。 就是无须作任何特别配置。 <insert id="insert" parameterType="com.sensible.model.User"> inser
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

包与模块的使用

目录 包: 模块的使用 序列化: 反序列化: json模块 pickle模块 hashlib模块 包: 包就是一个包含有_ _ init _ _.py文件的文件夹,所以我们创建包的目的就是为了用文件夹将文件/模块组织起来 需要强调的是:   1. 在python3中,即使包下没有__init__.py文件,import 包仍然不会报错,而在python2中,包下一定要有该文件,否则import 包报错   2. 创建包的目的不是为了运行,而是被导入使用,记住,包只是模块的一种形式而已,包的本
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

Python字符串的常用方法

Python中凡是用引号引起来的数据都称之为字符串类型 组成字符串的每个元素称之为字符,将这些字符连接起来,再用引号包含起来的就是字符串 字符串的操作: 索引: 组成字符串的字符从左至右,依次排列,按顺序编号为:0,1,2,3。。。 从右至左依次为:-1,-2,-3。。。 切片: 通过索引截取字符串的一段,形成新的字符串 str2 = str1[起始编号:结束编号:步长] 起始编号和结束编号若为0则可省略不写 注:切片顾头不顾尾 步长:指定切片截取的跨度 如为2则表示隔一个字符取值 若要使取值
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

js从入门到精通(2.2-3.2)

2.2 变量和常量 2.2.1 常量 在程序运行中保持不变的数据 2.2.2 变量 命名 字母或者下划线开头,中间可以是数字、字母或者下划线 不能包含空格 加号 减号 不能使用关键字 严格区分大小写 声明赋值 只是声明变量,并未对其赋值,则默认为undefined。 var可以多次声明同一个变量,如果该变量已经有一个初始值,那么此时相当于重新赋值。 作用域 全局变量和局部变量 全局声明在方法外部 生存周期 全局变量在主程序定义,一直到程序结束,局部变量只在函数之中,函数结束后,生存期结束。 2
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

内存扩充技术

内存扩充技术 覆盖技术 思想:将程序分成多个段(多个模块)。常用的段常驻内存,不常用的段在需要时调入内存。这种技术必须由程序员声明覆盖结构,操作系统完成自动覆盖。缺点:对用户不透明,增加了用户的编程负担。覆盖技术只用于早期的操作系统,现在已成为历史。 交换技术 思想:内存空间紧张时,系统将内存中某些进程暂时换出外存,把外存中某些已具备运行条件的进程换入内存(进程在内存与磁盘间动态调度)
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

07tree shaking、代码分割、懒加载、PWA技术

tree shaking tree shaking: 去除无用代码 前提:1.必须使用ES6模块化 2.开始production环境 作用:减少代码体积 在package.json中配置 "sideEffects": false 所有代码都没有副作用(都可以进行tree shaking) 问题: 可能会把css / @babel/polyfill (副作用)文件干掉 "sideEffects": [".css", ".less"] 代码分割 从入口分割可分为单入口和多入口 // 单入口 //
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

七种基础排序算法代码总汇

1、冒泡排序 算法详解参考:https://mp.weixin.qq.com/s/wO11PDZSM5pQ0DfbQjKRQA #include <iostream> #include <vector> using namespace std; void swap(vector<int> &arr, int i, int j) { int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } void BubbleSort
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

Spring中bean的生命周期和循环依赖

生命周期 实例化spring容器 有一个BeanFactory会做接下来的事情 扫描加了注解或者配置的类 解析类 实例化beandefinition 放入map 第一次调用后置方法 遍历map,验证beandefinition 反射并推断构造方法,使用构造方法区new一个实例 缓存、注解、合并db对象 提前暴露到二级缓存 属性注入----涉及循环依赖(其实是在create之前) 调用很多后置方法 完成aop 放入单例池 销毁 循环依赖 AB相互循环依赖 spring容器先去生成a的bean对象
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

pytest(十一)--assert断言

前言 断言是写自动化测试基本最重要的一步,一个用例没有断言,就失去了自动化测试的意义了。什么是断言呢? 简单来讲就是实际结果和期望结果去对比,符合预期那就测试pass,不符合预期那就测试failed assert pytest允许您使用标准Python断言来验证Python测试中的期望和值。例如,你可以写下 #test.sa.py def f(): return 3 def test_a(): assert f()==4 断言f()函数的返回值,接下来会看到断言失败,E as
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

Golang 与 JS 的字符串截取大同小异

Golang 和 JS 的字符串截取都可以利用索引定位的方式。 Golang: str := "abcdef" sub := str[1: 2] JS: const str = 'abcdef' const sub = str.substring(1, 2) Link:https://www.cnblogs.com/farwish/p/13400119.html
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

使用牛顿法迭代求平方根与立方根

平方根:求 a 的平方根 \(x=\sqrt{a}\),相当于求 \(f(x)=x^2-a=0\) 的根。 立方根:求 a 的立方根 \(x=\sqrt[3]{a}\),相当于求 \(f(x)=x^3-a=0\) 的根。 迭代步骤:(实际上就是不停地作切线,直到切点和所求的根非常接近) 先选取一个迭代的初始值\(x_0\) 可以求出\(f(x)\)在\(x_0\)处的切线方程:\(y=f'(x_0)(x-x_0)+f(x_0)\) 该切线与x轴的交点为:\(x_1=x_0-\frac{f(x_
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

css命名规范及项目文件目录

css命名规范及项目文件目录 必须使用英文开头,并且开头字母一律小写 所有的命名最好都小写 尽量不要用缩写英,除非可以一目了然的 如果遇到相差不大 class或者id,主功能识别字母在前,位置识别字母在后,位置识别字母;第一个可大写(如: navTop, menuLeft) 遵循驼峰命名法:第一个单词的首字母小写,其余每一个有意义的单词的首字母大写(如:studentInfo, getElementById) 名称 标准 头 header 内容 content/container 尾 foot
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

Array /访问数组元素进行赋值

使用动态初始化数组的时候,其中的元素将会自动拥有一个默认值。 整数类型;0; 浮点类型;0.0; 字符类型;'\u0000'; 布尔类型;false; 引用类型;null; public static void main (String [ ] args){    //动态初始化一个数组 int [ ] arrayA = new int [3]; sout ..........................( arrayA );//内存地址值    sout ................
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

[Usaco2002 Feb]Rebuilding Roads重建道路

题目 Description 一场可怕的地震后,奶牛用N个牲口棚(1 <= N <= 150,编号1..N)重建了农民John的牧场。奶牛没有时间建设多余的道路,所以现在从一个牲口棚到另一个牲口棚的道路是唯一的。因此,牧场运输系统可以被构建成一棵树。John想要知道另一次地震会造成多严重的破坏。有些道路一旦被毁坏,就会使一棵含有P(1 <= P <= N)个牲口棚的子树和剩余子牲口棚分离,John想知道这些道路的最小数目。 Input * 第1行:2个整数, N和P * 第2..N行:每行2个
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

SqlServer发现不是默认端口1433该如何进行连接

场景   可能平时大家连接Sql Server数据库的时候,都是直接IP+用户名和密码的方式,很少会关心Sql Server端口的问题。实际场景当中,我们还是会碰到Sql Server端口变更的问题,不是默认的1433端口,可能是其他端口(有些公司防火墙限制或者为了安全性问题考虑而变更了默认端口)。 解决方法   大家可能会很容易把服务器地址写成了:xx.xx.xx.xx:7788这种方式,以冒号分隔的,这样是错误的,其实Sql Server加端口号的正确方式是加分号,如下所示: xx.xx.
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

mysql 8 启动失败(本地计算机上的mysql服务启动后停止。某些服务再未由其他服务或程序使用时将自动停止)

mysql 8.0.19 启动失败,失败提示信息:本地计算机上的mysql服务启动后停止。某些服务再未由其他服务或程序使用时将自动停止。 在网上百度查了很多,寻找到一种解决办法:查看msyql服务的日志,看具体问题出在哪儿。 1、定位问题,查看mysql服务的日志 查看日志命令: mysql-8.0.19-winx64\bin>mysqld --console 发现一个ERROR日志让我很在意 2020-07-29T13:11:31.872423Z 0 [ERROR] [MY-000068]
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

linux和shell总结

linux发展史,从刚开始的Unix,变成Minx,发展成Linux。 发行版本:Ubuntu. Redhat. Debian. Linux Mint. CentOS vim/vi:有三种模式。一般模式,编辑模式,指令模式。 man 和 help都是帮助命令man是Linux的命令,help是shell中的命令 ctrl + c 停止进程。ctrl + l 清屏,reset彻底清屏。ctrl + q退出,tab键提示补全。ctrl + alt linux和Windows之间切换。 pwd:显示
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

LeetCode994 腐烂的橘子

在给定的网格中,每个单元格可以有以下三个值之一: 值 0 代表空单元格; 值 1 代表新鲜橘子; 值 2 代表腐烂的橘子。 每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。 返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。 做广度优先搜索,先遍历记录下来新鲜橘子的个数,同时把腐烂橘子坐标都压入队列。用一个数组记录每个点的腐烂时间,初始腐烂的位0,其余全为-1。不断从队列中取出腐烂节点,判断上下左右四个节点,如果符合要求就把他腐烂掉,同时更新
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0

luffy-支付宝支付

支付宝支付 入门 """ 1)支付宝API:六大接口 https://docs.open.alipay.com/270/105900/ 2)支付宝工作流程(见下图): https://docs.open.alipay.com/270/105898/ 3)支付宝8次异步通知机制(支付宝对我们服务器发送POST请求,索要 success 7个字符) https://docs.open.alipay.com/270/105902/ """ 流程 # 1、在沙箱环境下实名认证:https://op
分类: 其他 发布时间: 07-29 22:58 阅读次数: 0