途虎养车笔试+一面二面hr面

5.8 笔试

考试时间1.5h,有20道选择题,3道编程题,难度不大,力扣简单题

5.16 一面

  • 自我介绍
  • 介绍一个感觉最好的项目
  • 介绍项目的难点
  • 答案tensorflow人脸识别+JWT后端权限验证
  • 为什么使用tensorflow,不使用face-api等封装好的?
  • 冗余、轻便,自己封装好控制,不太重
  • 前端为什么选择react不使用vue?对比一下两个框架
  • 从设计思路、底层编译、写法、优势等方面结合:react是单向数据流,vue是双向数据绑定,经典mvvm框架;
  • react是all in js,vue使用模板,html,css,js结合;
  • react是类式的写法,api很少,而Vue是声明式的写法,通过传入各种options,api和参数都很多。所以react结合typescript更容易一起写,Vue稍微复杂;
  • vue模板和渲染函数的弹性选择, 简单的语法及项目创建, 更快的渲染速度和更小的体积,react更适用于大型应用和更好的可测试性,同时适用于Web端和原生App, 更大的生态圈带来的更多支持和工具 。
  • flex:1
  • flex-grow 和 flex-shrink、flex-basis 的简写,默认值为 0 1 auto。flex:1为1 1 auto
  • 垂直居中
  • 文字(line-height)、display: flex、transform:translate(0, -50%)、align-items:center
  • 前端做了哪些优化?
  • 压缩Gzip、缓存、大图切割、lazy、CDN、减少重排重绘
  • CDN是什么?原理
  • 动态选择最近的服务器进行服务提供
  • CSS层有什么优化?或者做了哪些工作
  • 渐进增强
  • BEM规范
  • 深拷贝手写
  • 底层级:JSON.parse(JSON.stringify(obj))
  • 深度嵌套:递归
  • new原理?手写
function myNew(fn, ...args){
	let ojb = Object.create(fn, prototype)
	let res = fn.call(obj, ...args)
	if(res && (typeof res === 'object' || typeof res === 'function')){
		return res
	}
	return obj
}

  • 数据类型判断
  • typeof、instanceof、Object.prototype.toString.call()
  • 扩展细说区别
  • js数据类型?区别
  • Number(数字),String(字符串),Boolean(布尔),Symbol(符号),null(空),undefined(未定义)在内存中占据固定大小,保存在栈内存中; Object(对象)、Function(函数)。其他还有Array(数组)、Date(日期)、RegExp(正则表达式)、特殊的基本包装类型(String、Number、Boolean) 以及单体内置对象(Global、Math)等 引用类型的值是对象 保存在堆内存中,栈内存存储的是对象的变量标识符以及对象在堆内存中的存储地址。
  • 算法:链表反转
  • 反问
  • 部门方向、业务、技术栈、前景

5.17 约二面

5.18 二面

  • 互相自我介绍
  • 挑一个介绍项目
  • 细嗦tensorflow,做了哪些工作?模型怎么训练的
  • 谁挑选的技术栈?为什么选择tensorflow?后端承担了哪些工作?前端有多少人,怎么分工的
  • 场景题:100000条数据渲染
const renderList = async () => {
    const list = await getList()
    const total = list.length
    const page = 0
    const limit = 200
    const totalPage = Math.ceil(total / limit)
    const render = (page) => {
        if (page >= totalPage) return
        setTimeout(() => {
            for (let i = page * limit; i < page * limit + limit; i++) {
                const item = list[i]
                const div = document.createElement('div')
                div.className = 'sunshine'
                div.innerHTML = `<img src="${item.src}" /><span>${item.text}</span>`
                container.appendChild(div)
            }
            render(page + 1)
        }, 0)
    }
    render(page)

  • promise
  • 异步编程的一种解决方案,pending(等待态),fulfiled(成功态),rejected(失败态)
  • eventloop?有什么宏任务微任务
  • 区分微任务宏任务
  • 有微任务队列的代表就是.then,MutationObserver,宏任务的话就是setImmediate setTimeout setInterval
  • this
  • 普通函数调用:通过函数名()直接调用:this指向全局对象window(注意let定义的变量不是window属性,只有window.xxx定义的才是。即let a =’aaa’; this.a是undefined)
  • 构造函数调用:函数作为构造函数,用new关键字调用时:this指向新new出的对象
  • 对象函数调用:通过对象.函数名()调用的:this指向这个对象
  • 箭头函数调用:箭头函数里面没有 this ,所以永远是上层作用域this(上下文)
  • apply和call调用:函数体内 this 的指向的是 call/apply 方法第一个参数,若为空默认是指向全局对象window。
  • 函数作为数组的一个元素,通过数组下标调用的:this指向这个数组
  • 函数作为window内置函数的回调函数调用:this指向window(如setInterval setTimeout 等)
  • 对象扁平化
function flattenObject(obj, prefix = '') {
  return Object.keys(obj).reduce((acc, k) => {
    const pre = prefix.length ? prefix + '.' : '';
    if (typeof obj[k] === 'object' && obj[k] !== null) {
      Object.assign(acc, flattenObject(obj[k], pre + k));
    } else {
      acc[pre + k] = obj[k];
    }
    return acc;
  }, {});
}


  • 堆栈溢出
  • JavaScript 的函数调用栈有一定大小限制,当函数调用的嵌套层数过多时,会导致栈溢出错误。
function recursive() {// 递归出现栈溢出
    recursive();
}
recursive();

  • JavaScript 的堆也有大小限制。堆是用来存储变量和对象等数据的一段内存空间,当我们创建了大量数据或者数据太大而超过了堆的容量时,就会触发堆溢出错误。
let arr = [];
while (true) {// 堆溢出
  arr.push('a');
}

  • addeventlistener第三个参数作用
  • 第三个参数是用来规定是采用捕获类型还是冒泡类型。默认false。如果参数为false,那么就采用冒泡型事件,那么事件就会从内部往外层触发。如果参数为true,那么就采用捕获型事件,那么事件就会充外层向内触发。

5.18 约三面

5.19 hr面试

  • 薪资
  • 手头offer
  • 地点
  • 学习能力
  • 介绍一个简历
  • 为什么选择前端
  • 未来发展计划
  • 介绍途虎

5.22 电话沟通

5.22 下午offer

#途虎养车##途虎##秋招##春招#
全部评论
当天约三面?
点赞 回复 分享
发布于 2023-05-26 00:33 广东
大佬牛啊,问下这公司加班多吗
点赞 回复 分享
发布于 2023-05-26 10:24 湖北
笔试考的哪部分比较多
点赞 回复 分享
发布于 2023-05-26 10:27 江苏
佬,薪资是hr直接就开么,还是自己说个范围啊
点赞 回复 分享
发布于 2023-05-26 10:53 陕西
感觉我们应该是一批的,不过我因为二面面试官时间问题给我推后了几天。不知道是不是之前拒途虎的比较多 ,hr面完一个小时就电话沟通了,感觉比较缺人
点赞 回复 分享
发布于 2023-05-26 14:10 四川
这也太难了 不好好深度学 根本没机会
点赞 回复 分享
发布于 2023-09-06 18:45 云南

相关推荐

8 32 评论
分享
牛客网
牛客企业服务