科二连续挂了2次后😢😢😭😭,下定决心离开长沙去广州找工作了,就在前2天终于入职了新公司,今天也在广州租了房,算是稳定了下来,也分享一下这些日子里,面试遇到的一些面试问题,希望能帮助到大家,先声明我是个菜鸡,如果问题或者解答有误,欢迎直接在评论区指出。
前端基础
1.考parseInt的第二个传参
parseInt的第二个参数是进制
// 下面输出的结果
['1', '2', '3'].map(parseInt)
// [1, NaN, NaN]
2. 数组有哪些方法?
// map, forEach, filter,some,reduce,every
3.讲一下javascript里面的消息队列与事件循环
4.谈谈你对原型链和继承的理解
帮你彻底搞懂JS中的prototype、__proto__与constructor(图解)
vue框架
1. Vue 组件间通信有哪几种方式
props / $emit 适用 父子组件通信
ref 与 $parent / $children 适用 父子组件通信
EventBus ($emit / $on) 适用于 父子、隔代、兄弟组件通信
$attrs/$listeners 适用于 隔代组件通信
provide / inject 适用于 隔代组件通信
Vuex 适用于 父子、隔代、兄弟组件通信
2. v-model 的原理
我们在 vue 项目中主要使用 v-model 指令在表单 input、textarea、select 等元素上创建双向数据绑定,我们知道 v-model 本质上不过是语法糖,v-model 在内部为不同的输入元素使用不同的属性并抛出不同的事件:input和textarea:(value/input), select: (value/change), checkbox: (checked/change)
3. 什么是 MVVM?
基本的算法题
1.判断链表里面是否有环leetcode-link
用2个指针,一个指针走的慢,一个指针走的快
/**
* Definition for singly-linked list.
* function ListNode(val) {
* this.val = val;
* this.next = null;
* }
*/
/**
* @param {ListNode} head
* @return {boolean}
*/
var hasCycle = function(head) {
var slow , fast, res = false
slow = head
fast = head && head.next
while(slow !== null && fast!== null){
fast = fast.next
fast = fast && fast.next
if(fast !== null && fast === slow){
res = true
break
}
slow = slow.next
if(slow !== null && fast === slow){
res = true
break
}
}
return res
};
2. 判断字符串里面的括号是否匹配leetcode-link
考察栈相关的知识
var isValid = function(s) {
const stack = [];
for (let i = 0 ; i < s.length ; i++) {
let c = s.charAt(i);
switch(c) {
case '(': stack.push(')');
break;
case '[': stack.push(']');
break;
case '{': stack.push('}');
break;
default:
if (c !== stack.pop()) {
return false;
}
}
}
return stack.length === 0;
};
3. 在有序的数组里面找一个值leetcode-link
二分查找
/**
* @param {number[]} nums
* @param {number} target
* @return {number}
*/
var search = function(nums, target) {
var s = 0, e = nums.length, res = -1, m
while(s < e){
m = Math.floor((s + e) / 2)
if(nums[m] === target){
res = m
break
}else if(nums[m] < target){
s = m + 1
}else{
e = m
}
}
return res
};
计算机网络
我这块很鸡肋,下面贴一些别人写的好的文章
1.解释DNS
2. 解释CDN
3. http与https的区别
总结
前端面试的考察内容大致为以上几个部分,前端基础,框架相关的,简单的算法和数据结构,计算机网络还有工具相关的问题等等,我知道自己菜,技术渣,这次从长沙来广州找工作也是为了改变现状,努力工作改善生活,提高技术。
2020年过去了1/4我们每天都在见证历史,见证了像2003年一样的"非典",见证了像1988美股那样的熔断,见证了1931年那样资本家把牛奶倒入河里,同时也见证了历史首次原油期货价格为负,不知道未来还会有哪些意外等着我们,现在能做的就是努力工作,多存一点钱,让自己过的更好一点,5月加油⛽️⛽️⛽️。