招前端实习, 该问什么问题?

2018-09-30 15:13:58 +08:00
 fulvaz

求各位帮我看下是不是问太难了....

  1. 清除浮动 /flex 布局至少会一个 选择清除浮动会问原理, 只要提到 BFC 就可以 选 flex 则会问 flex-grow: 1 是怎么分配空间
  2. js, let 和 var 的区别, function 和箭头函数的区别, commonJS 和 esm 的区别.
  3. http 状态码, 缓存相关的请求头, cors 跨域怎么做
  4. 向我安利 webpack, 然后解释一下 webpack 和 gulp 的区别 --- 这题回答得好, 直接给过, 无论前面答得怎样.
  5. 数组去重(还没有到达这里的勇士)

嗯....来面的都 gg 了, 死第一题的最多

ps: 工作 3 年死第一题的也很多.......不好吧?

4065 次点击
所在节点    问与答
39 条回复
yhxx
2018-09-30 22:35:45 +08:00
CommonJS 和 esm 有点过时
其他的一点都不过分

话说这种题都答不好,是不是你们给的待遇太低了吸引不到好的简历?
fulvaz
2018-09-30 23:10:36 +08:00
@wly19960911

你看, es2015, 3 年前的东西, 不算新了呀

@yhxx @myl0204

过时个屁, 不知道区别就没法理解 esm 静态分析的优点, 也就理解不了 treeshake 的实现原理.

而我只要他能答出 esm 是静态的, 并且能举个栗子说明我就很欣慰了. 后面能用来干嘛, treeshake 怎么实现的我根本都不会问.

反而是问 AMD CMD 区别的才是真的 low, webpack 从来没支持过 CMD, seajs 也没人用了.

认为 CMD === CommonJS 的请去墙角反省一下 ---- 接触到的信息源太 low 了, 不过没事, 我也反省过.
xiaojie668329
2018-09-30 23:12:58 +08:00
我经常问写一个生成指定范围内随机整数的方法,本来还想写出来的话在此基础上写一个数组 shuffle 方法。一行代码的事情,面了那么多,写出来随机数的就三个人,大部份都是工作两三年的。
fulvaz
2018-09-30 23:19:36 +08:00
@wly19960911

我也用 angular, 然而

angular-cli 不是无敌的, 很多优化 angular-cli 做不了, 还有很多很烦人的问题

比如 ng-zorro 的作者提的 issue, 就是因为 angular-cli 把 less 的配置改了, 所有用 ng-zorro 的人都要手动降级 less

https://github.com/angular/angular-cli/issues/10430

现在模块化简直是大型应用的根基, 而 gulp 没做到的事情就是 webpack 帮你实现了模块化, 还有什么理由不去学?

另外放弃 webpack 基本意味着你要一辈子依赖 angular-cli 了, 上拉勾搜搜关键字, 有没有危机感?

当然, 我并不怎么喜欢 webpack.
wly19960911
2018-10-01 02:37:43 +08:00
@fulvaz 我能理解你的意思,凡事都循序渐进的,我认为对于实习生还是“会什么”比“会不会什么”更重要,面试是探底,以上问题更倾向于匹配。

另外我并不是放弃 webpack,而是并不是优先学习。学的东西太多我暂且不想在构建工具上花太多的功夫,就像 spring boot 会有多少人去了解 maven 各种复杂配置一样,也没有人说放弃手写 pom.xml 就不能是合格的 Java 开发。不过这个题外话了,也谢谢说这些了。

不得不说 angular-cli 的坑是多,特别是 node_modules 下面的 CSS 坑成狗了。
whypool
2018-10-01 03:50:08 +08:00
你这是招实习还是秀优越的?

对于业务需要招什么水平的人,面试的至少要有个把控的,而不是去问什么原理,问框架差异

去面后端有面试官问 spring boot 和 springmvc 的差异么?

前端实习,会 css 布局,什么 BFC 原理没必要了,会原生 js,监听事件,触发,原型链什么的

框架了解就行,各种 cli 都配好了,虽然现在起步基本都是 vue

如果是大厂面,以上可以无视
bucky
2018-10-01 08:14:45 +08:00
为什么清除浮动原理提 BFC 就可以,BFC 只是清除浮动影响的一种方式,跟原理有什么关系
bucky
2018-10-01 08:16:17 +08:00
而且 css 又不是编程语言,清楚浮动只存在方式,根本没有原理一说
fulvaz
2018-10-01 11:52:54 +08:00
@whypool @bucky

学习停留在会用的层面很可怕, 你不肯去了解为什么, 以后遇到类似的东西还是只能抓瞎, 然后硬着头皮学会用

比如, 过两年三个框架要是都被淘汰了, 你们要重新学新的怎么办? 你们还要硬着头皮去记住 API 吗?

更何况我招个实习就是往转正的去的, 本来就是在考察学习能力, 知道 BFC 的话说明有钻研精神, 人比较踏实, 完全可以要.
fulvaz
2018-10-01 11:57:26 +08:00
@wly19960911 嗯, 我也考虑换成其他问题

但布局是不能变的, 必须要问的

js 换成红宝书和 vue 文档出现过的 es6 语法

其他我不想问了.
bucky
2018-10-01 12:11:51 +08:00
@fulvaz 我的意思是 css 的东西很多都只是规则,它和编程语言不一样。还有我问你的问题你也没正面回答不是吗,自己都不知道正确答案,怎么面试别人?
limuyan44
2018-10-01 18:13:16 +08:00
给个编辑器写页面好了,前端这么多东西
fulvaz
2018-10-01 20:01:15 +08:00
@bucky 你要这么说的话, 编程语言也全是规则啊, ECMA-262 不是规则吗? IEEE-764 不是规则吗?

就连 C 语言也是有一套规则的, CSS 和其他编程语言有什么不一样呢? 我不推荐继续讨论这种容易抬杠的问题.

言归正传, 如果你的问题是"为什么清除浮动原理提 BFC 就可以", 那我可以回答一下

比如一下很常见的清除浮动

```
clearfix:after {
content: '';
clear: both;
display: table-cell;
}
```

前两句很简单, 那最后一句是避免父容器高度坍缩.

那为什么 display: table-cell 能避免高度坍缩? 那当然是因为新建了一个 BFC, 因此有提到这个就好了, 说明这位候选人很踏实, 而且学习是"知其然知其所以然", 非常棒.

至于为什么我不问 BFC 是什么, 有什么其他触发条件......你看, 如果我再问这个你们又说我为难人, 多没意思

我不知道为什么你们对自己要求越来越低, 我校招的时候这些都是必须掌握的.
yhxx
2018-10-01 23:35:08 +08:00
这种态度,难怪招不到人。
bucky
2018-10-02 07:15:02 +08:00
@fulvaz 那我再问你,为什么 BFC 能清除浮动,你回答一下,我不认为 BFC 是原理,而只是一种方式
bucky
2018-10-02 07:19:47 +08:00
@fulvaz 就你这逻辑思维,阅读理解能力,也配做面试官?我哪句话说面试不能深入了,我一直说的是你面试别人你的表述要清楚一些,别因为自己表达能力低下而误导面试者,看了你的回复我也不报希望了,好自为之
bucky
2018-10-02 07:22:06 +08:00
@fulvaz 你觉得编程语言和 css 能相提并论可见你这人水平之低,外行招内行,你能招到个鬼,躲过垃圾公司垃圾员工是大家之辛
AnnatarHe
2018-10-02 13:02:47 +08:00
1. 盒子模型从里到外分别是什么
2. relative/absolute 布局
3. 垂直居中

我还没见到三道题都能答对的同学,是不是更惨😑
fulvaz
2018-10-07 16:55:26 +08:00
@bucky

那你说了算咯......

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/494182

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX