欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

腾讯官网投递的一二面——以为挂的过了,以为过的挂了

程序员文章站 2022-06-09 17:55:56
...

腾讯官网一面

基本全是考官出场景题,比较懵,末尾了问了一下项目觉得有什么难点,如何解决的,项目就聊了十分钟,全程一小时

一面过了,自己觉得算是运气,算法答的比较差

场景题

  • function People(num) { // 构造器
    	var age = num;
    	this.getAge = function() {
    		return age;
    	};
    	this.addAge = function() {
    		age++;
    	};
    }
    var lionel = new People(23);
    lionel.addAge();
    console.log(lionel.age);
    console.log(lionel.getAge());
    var karma = new People(20);
    console.log(karma.getAge());
    
    // 打印出什么?
    undefined
    24
    20
    
  • 实现一个快速排序

    • 吃了算法的亏,只口述了如何实现
  • 手写算法:有两种上楼梯的方式,一种是一次上一级,一种是一次上二级。如果告诉你一个楼梯共有多少级,请问你有多少种不同的上楼的方式?(经典力扣爬楼梯题目)
    比如:楼梯有 3 级,共有 3 种上楼梯的方式。一次一级,先一级再二级,和先二级再一级。

  • 手写算法:实现一个add(a, b),大整数相加,add(“1234”, “4321”) = “5555”(经典力扣字符串相加题目)

    • 没写出来
  • 用sort排序对象,例如:arr = [{a: 1}, {a: 2}, {a: 2}, {a: 2}, {a: 2}],考察基础知识 sort 函数

    • arr.sort((a, b) => a.a - b.a)
      
  • html + css,实现一个上下左右居中的红色方块

    • 手写了一个弹性布局,用了justify-content align-items两个属性,没细究

问答(基础知识)

  • 什么是 http?
  • http 头有哪些?
  • 实现跨域用哪些 http 头?
  • 跨域有什么方法,聊了 cors 和 jsonp 原理
  • 项目:浅谈了一下登录实现,我用的 token(这里感觉可以事先准备好一些擅长的点,便于展示)

腾讯官网二面

这次二面算法就问了一道,相对上次顺手一点。首先从项目引入问答,然后大部分都是问面试相关的知识点,偏实际应用一点,时长50分钟。

二面挂了,虽然感觉比一面答的好些

  • 项目难点,怎么解决的?

    • 我把主流登录方式都谈了,然后还说了前后端如何交互,如何拿到数据,http 请求方式等
  • 怎么区分前后端分离和不分离项目的?

    • 分离:各司其职,前端调接口;不分离:后端渲染好整个页面再发送到前端
  • 缓存,怎么控制缓存方式?浅谈知道的大体知识,细说了下 Pragma、cache-control 头如何控制缓存

  • 考官提了一嘴 ts,我说不会就没问了

  • 移动端和 pc 端如何适配?精力有限,就一套代码弄个响应式;大公司完全可以两套代码

  • 浏览器不同造成的 css 样式不同如何解决?写一个公共文件,定义好基本样式的值,无论哪个浏览器打开都按照这个文件重置一遍样式

  • 输入 url 到呈现页面流程是怎样的?(细说了 tcp 三次握手)

  • http 和 https 的区别?我谈的比较浅显,面试完提问的时候,考官提到端口、验证等

  • 最后,问了个算法

    • // 字符串排序(我是比较字符的 ascii 码实现,代码未成功)
      str = "aa a bee dd ee"
      => str = "a aa bee ee dd"
      // 后来他问能不能一个语句搞定,我感觉他本意也不是考算法,我只说了思路,思路对了
      他给的结果:return str.split(" ").sort().join(" ")