不全面,能记起来的都写了,js中有部分和手写代码重复
总的来说,面试就是按照流程走的感觉,css,js,算法,挨个过
一面已经过了,当时是下午六点结束的面试,直接约了二面在半个小时后,结果上线没有面试官
等了十来分钟,给hr打了电话,说是今天都下班了。。。
过了两天我给一面面试官又说了情况,他建议我联系hr
我就又给hr打了电话,hr说他是兼职的。。。
面试的邮件要清理没有任何联系方式,一面面试官和hr的都是因为他们给我打过电话,我才知道他们的电话号
有没有跟我一样的xdjm,怎么办?已经一个多星期过去了
css
- css 左边200px,右边自适应
- css 垂直居中
- css 中的*
js
- 数据类型,基本/引用
- 数组去重
- 数组扁平化
[1,2,[3],[4,5,[6]]]
function flatten(arr) { return arr.reduce((result, item) => { return result.concat(Array.isArray(item) ? flatten(item) : item) }, []) }
- this
let obj = { fun(){ console.log(this) } } let fun = obj.fun; fun()//--> 打印出什么呢
- 手写apply
Function.prototype.apply2 = apply2 function apply2(obj) { let args = [] let obj.fn = this for(let i = 0; i < arguments[1].length; i++) { args.push('arguments[1][' + i + ']') } let result = eval('obj.fn(' + args + ')') delete obj.fn return result } function f(){ console.log(1) } const obj = { } f.apply2(obj, [2, 3, 4])
- js事件循环
for(var i=0;i<5;i++) { setTimeout(()=>{ console.log(i) }, i*1000) } // 打印什么
let promise = new Promise((res,rej)=>{ setTimeout(()=>{ console.log(0) },0) console.log(1) res(); rej(); }) promise.then(()=>{ console.log(2) },()=>{ console.log(3) } ) js闭包 function fun(){ let a =1 function fun1(){ console.log(a); } fun1(); } fun(); // 打印什么
- 作用域链
算法
给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
示例 1:
输入:s = "()"
输出:true
示例 2:
输入:s = "()[]{}"
输出:true
示例 3:
输入:s = "(]"
输出:false
示例 4:
输入:s = "([)]"
输出:false
示例 5:
输入:s = "{[]}"
输出:true
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
链表1:1->4->6
链表2: 2->3->5
结果1->2->3->4->5->6
数组扁平化
手写apply
全部评论
(4) 回帖