【秋招】百度 已意向
一面
- webpack热更新?
- json格式的数据校验?
- fetch并行请求与取消请求如何处理?
- 什么是promise?实现一个简单的promise?
- 跨域?
- 页面上有个盒子和一个按钮,盒子要求水平垂直居中,点击按钮后盒子100毫秒向右移动100px?
- vw和vh的与px的区别及应用场景?
- ES6新特性?
- set集合,实现取数和存数?
- js实现千位分隔符?
- git常用命令?git stash了解不?
- 微前端做了些啥?
- react和react hooks?react事件绑定原理?
二面
- 说一下对H5和C3的了解?
- video和media标签的使用?
- cookie和localStorage和sessionStorage的区别?
- 场景题:一天仅提醒一次用户,怎么使用?
- ES6?
- set和map的区别?
- map与object的区别?
- 获取上面两种属性的个数?
- 遍历上述两种属性?
- map和object的key遍历顺序是怎样的?
- 箭头函数和普通函数的区别?
- token的认证机制?
- token采用什么加密方式?为什么不采用非对称加密?
- 响应式开发和页面适配一般怎么实现?
- 移动端事件touch与PC上的click有什么区别?touch会遇到什么问题?
- 为啥touch事件要留300毫秒的延迟?
- node中的require是怎么实现的?包括模块的寻找和缓存?
- common.js和其他的模块机制?
- this指向
-
var o = { a: 10, b: { a: 12, fn: function(){ console.log(this.a); console.log(this); } } } o.b.fn(); var j = o.b.fn; j(); function something() { this.x = x } something(3);
- 二分查找(升序数组查找目标值)
-
var search = function (nums, target) { let low = 0, high = nums.length - 1; while (low <= high) { const mid = Math.floor((high - low) / 2) + low; const num = nums[mid]; if (num === target) { return mid; } else if (num > target) { high = mid - 1; } else { low = mid + 1; } } return -1; };
三面
- 闲聊?