Wendy
文章17
标签13
分类6
实习面试总结

实习面试总结

百度实习一面

面试时间2023-2-7

  • CSS盒模型以及有哪几种
  • 画一条0.5px的线
  • 内联样式与样式表的区别
  • 原型与原型链
  • 每个原型都有个什么属性指向它的构造函数、关联对象
  • 如何实现水平垂直居中
  • Js跨域的定义
  • this的作用
  • 状态码301与302
  • js实现继承的方式
  • js实现代理和事件冒泡的区别
  • 防抖节流的区别
  • 浏览器的本地缓存方式
  • Http协议的方法有哪些
  • 数组去重用哪些方法
  • 垃圾回收机制

小米实习一面

面试时间2023-2-16

算法题

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
找不同

题目描述
给定两个字符串 s 和 t ,它们只包含小写字母。​
字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。​
请找出在 t 中被添加的字母。​

示例 1:​
输入:s = "abcd", t = "abcde"​
输出:"e"​
解释:'e' 是那个被添加的字母。​

示例 2:​
输入:s = "", t = "y"​
输出:"y"​

提示:​
1. 0 <= s.length <= 1000​
2. t.length == s.length + 1​
3. s 和 t 只包含小写字母
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29

import java.util.Scanner;
public class Main {
public static char findDifference(String s, String t){
int[] arr1 = new int[26];
int[] arr2 = new int[26];
char[] char1 = s.toCharArray();
char[] char2 = s.toCharArray();
int len1 = char1.length;
int len2 = char2.length;
for(int i=0;i<len1;i++){
arr1[char1[i] - 'a'] +=1;
}
for(int i=0;i<len2;i++){
arr2[char2[i] - 'a'] +=1;
}

for(int i = 0; i<26;i++){
if(arr1[i]!=arr2[i]){
return (char)(i+97);
}
}
}
public static void main(String[] args){
String s = "abcd";
String t ="abcde";
System.out.println(findDifference(s, t));
}
}
  • 闭包
  • 防抖节流的区别以及具体的应用
  • flex布局
  • vue2.0 与 vue3.0 数据双向绑定的区别
  • let和var的区别

小米实习二面

面试时间2023-2-27

算法题

给定一个长度为 n 的 0 索引整数数组 nums。初始位置为 nums[0]。
每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处:

0 <= j <= nums[i]
i + j < n
返回到达 nums[n - 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n - 1]。

示例1:

输入:nums = [2,3,1,1,4]
输出:2

解释: 跳到最后一个位置的最小跳跃数是 2。从下标为 0 跳到下标为 1 的位置,跳 1 步,然后跳 3 步到达数组的最后一个位置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//这是网上搜到的解答,当时写的没来得及保存
public static int jump(int []arr){
int end = 0;
int position = 0;
int step = 0;
for(int i=0;i< arr.length-1;i++){
//记录能够跳到最远位置
position = Math.max(position, i+arr[i]);
//限制在每次跳最远的区间范围计算
//当i到达边界
if(i==end){
//重新记录能够跳到最远处为新的区间边界
end=position;
//步数加1
step++;
}
}
//返回步数
return step;
}

第二题是一个CSS题

忘记截屏了,实现效果就是一个绿色圆矩形在左右两边的腰上都有两个小凹槽,  
我用三个div来解决的,面试官问我一个div如何解决,我没打出来,原来可以用伪元素解决

第三个写的题是事件循环的输出

第四个写的题是让我写一下点击事件代理的几种方式

  • 监听器的三个参数代表了什么含义
  • vue生命周期以及每个大概的概述
  • 如果我打开了页面A,又打开了页面B,此时我从页面B返回了页面A,如何实现页面A的数据还是我离开页面A时的数据?
  • 防抖节流
  • 你有了解过webpack吗?
  • watch和computed的区别,异步操作选哪个?
  • vue组件之间的通信,详细讲ref
  • $parent $child 与 prop $emit 的区别
  • vue由什么可以优化的地方
  • git用过什么命令?git merge,git rebase什么意思?
  • npm和yarn的区别
  • 一开始让我手写一个promise后来就问了我一些promise的问题
  • 三个状态是什么?是否可逆?
  • 问我如何实现一个成功就成功,以及一个失败就失败
  • vue的组件化

美团面试一面

  • 你认为一个好的前端技术人员需要具备什么能力
  • 如何提升用户体验
  • 如何加快页面加载速度
  • 描述一下做的项目
  • 图片懒加载如何实现?
  • vue数据更新后的底层逻辑
  • 堆栈和队列的区别
  • OSI七层
  • 缓存相关知识
  • 普通刷新与强制刷新
  • 事件捕获与事件冒泡
  • vue3的优化
  • 进程与线程

亚信一面

面试时间:2023-5-8 15:30-16:15

  • 介绍项目
  • let const var 的区别
  • js对DOM的操作,如新建节点、删除节点等
  • 数组的常见方法
  • 项目对图片的处理
  • 项目中遇到的难点
  • ES6新特性
  • 箭头函数和普通函数的区别
  • computed和watch的区别

温州中津研究院

面试时间:2023-6-19 10:00

  • vue-router的原理

  • watch和computed的区别

  • 项目中遇到的问题

  • css实现三角形

  • 组件间通信

  • mvvm和mvc的区别

  • 目标工作地点

  • 更喜欢哪个

  • 在组织中组织过印象最深刻的活动是什么

  • 有多少人参与

  • 和这些人有没有什么沟通上的问题

  • 通过这些你学到了什么

  • 为啥在室外参加面试

  • 公司每天收到很多很多简历,你认为你的突出优势是什么

  • 自己的缺点

  • 如何排解自己的压力

  • 希望的公司是什么样的?

  • 了解公司吗?

  • 是独生女吗?

  • 业余生活?

本文作者:Wendy
本文链接:https://wendy-ljw.github.io/2023/02/08/interview-experience-1/
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可
×