京东商城前端面试
- 基本数据类型,怎么区分数据类型
- 分析一下移动端日历,PC端日历以及桌面日历的一些不同和需要注意的地方。
- 哈希冲突怎么解决
- 说说Vue的状态机怎么实现的,或者说为什么不能直接修改值。
- generator的原理
- 块级元素和行内元素区别?怎么设置?
- 回流和重绘
- 描述一下闭包,谈谈闭包的缺点
- 说说你处理过的浏览器兼容性问题
- img的src也可以跨域吗?
- Jquery选择器怎么实现
- 编写一个元素拖拽的插件
- Stream是什么,使用的两种模式
- 描述一下React的虚拟dom,为什么要用虚拟dom
- 懒加载怎么实现
- Vue组件中子组件如何与父组件进行通信?
- 什么情况会内存泄漏?
- 说一下你上一家公司的一个整体开发流程吧
- 你为什么要离开上一家公司?
编程题
- 给定一个非空整数数组,找到使所有数组元素相等所需的最小移动数,其中每次移动可将选定的一个元素加1或减1。 您可以假设数组的长度最多为10000。
示例 1:
输入:
[1,2,3]
输出:
2
说明:
只有两个动作是必要的(记得每一步仅可使其中一个元素加1或减1):
[1,2,3] => [2,2,3] => [2,2,2]