美团视频一面面经-前端方向

热腾腾的美团面经。
一上来面试官就让我介绍下我做的项目。我介绍了之后,就没有然后了(当时我以为会深问)。
然后就是编程了。
1.经典的柯里化问题。编写一个函数,实现add(2)(3)。
2.作用域问题。
var length = 10;
function fn() {
console.log(this.length);
}
var obj = {
length: 5,
method: function(fn) {
fn();
arguments[0]();
}
};

obj.method(fn, 1);
问会输出什么?这个我回答的不好,但是面试官说(⊙v⊙)嗯,也没给我纠错。哎╮(╯▽╰)╭
3.第三个是输出<body>下面的四个<a>标签对应的索引。这个也总结过,但是写的时候有瑕疵,哎╮(╯▽╰)╭
4.用2到3行写出二维数组变成一维数组的函数。
我的思路是用slice接口把数组中的一位数字切出来,然后拼接concat下一位数字。有好的思路,留言哈
然后编程就结束了。其中最主要的是楼主没用过牛客网上的JavaScript(node 0.12.12)编程过,所以全程就相当于是在纸上写代码。会了就不会犯这么多低级错误了。(磕墙……)
之后问了一些问题。
1.三列布局怎么实现啊,都有哪些方法。
2.flex布局了解吗?
3.最近在看什么新技术?
4.看过哪些博客逛过哪些论坛?
5.怎么学习前端的?
6.你觉得自己还有哪些优点。
然后让我等通知,可能后续会有面试官联系我。现在好忐忑啊,不知道会不会有二面。
面试中的时候感觉答的还不错,面完下来检测下,我晕+_+,这么多都不对……接着努力吧~
发个面经,攒人品~~~

#美团#
全部评论
/* 利用apply和concat转换 */ function reduceArr(arr) { return Array.prototype.concat.apply([], arr); // return [].concat.apply([], arr); } /* 使用 reduce */ function reduceArr(arr) { return arr.reduce(function(pre, currentValue) { return pre.concat(currentValue) }, []) } /* ES6 的展开运算符 */ function reduceArr(arr) { return [].concat(...arr) } 第四个问题,看了面经,搜索整理出来的几个。第三个题是什么意思?没太懂
点赞 回复
分享
发布于 2017-09-05 22:23
两个小思路: let arr = [1,2,3,[1,2,3],[2,[3,4],3]] function flatteningToArr1(arr) { let str = JSON.stringify(arr) let matchReg = /[\[\]]/g function replaceHandle(p, offset) { if (offset != 0 && offset != str.length - 1) return '' else return p } return JSON.parse(str.replace(matchReg, replaceHandle)) } function flatteningToArr2(data) { let ans = [] return function f1(arr) { arr.forEach(ele => { if (ele instanceof Array) { f1(ele) } else { ans.push(ele) } }) return ans }(data) } console.log(flatteningToArr1(arr)) console.log(flatteningToArr2(arr))
点赞 回复
分享
发布于 2017-09-06 00:00
联易融
校招火热招聘中
官网直投
扁平化数组一般用concat 如果都是数字的话可以用tostring然后split
点赞 回复
分享
发布于 2017-09-06 00:33
是上海的吗
点赞 回复
分享
发布于 2017-09-05 20:05
现场面么?
点赞 回复
分享
发布于 2017-09-05 20:12
上海,9.1面的。。前端。。至今没下位
点赞 回复
分享
发布于 2017-09-05 20:26
是笔试过了的面试?
点赞 回复
分享
发布于 2017-09-05 20:34
简单实现下二维数组转化成一维数组的题目: function change(arr){ return arr.reduce(function(i,j){ return i.concat(j); }) } 哈哈 超过了三行...
点赞 回复
分享
发布于 2017-09-05 20:41
arguments[0](); 这个为什么会打印 2?没搞懂
点赞 回复
分享
发布于 2017-09-05 21:10
你是男生吗  为啥问题这么难
点赞 回复
分享
发布于 2017-09-06 10:35
索引那个怎么写啊
点赞 回复
分享
发布于 2017-09-06 12:26

相关推荐

点赞 48 评论
分享
牛客网
牛客企业服务