
shopee 的提前批刚开始的时候就投了,当时刚学前端,刚开始面试,啥都不会,真正体会到了什么叫“一问三不知”😭……
一面没有任何悬念的挂掉之后,又投了秋招的前端,经过一段时间的学习,还是能明显感觉到自己的进步的。不过最终二面还是凉凉了。
面了好多也凉了好多,怪自己学习前端的时间太短,基本功不扎实。
所以说,这篇面经还是一篇“凉经”,不过几乎完全还原了当时的场景。
https://shopee.com/xxx 的正则表达式(憋了半天没憋出来)面试官最后说还是需要加强一下基本功……非常和蔼的面试官,非常耐心,只可惜我太太太菜了,一面凉凉。之后又投递了秋招,让面试官看到我的成长!😁
下面主要开始聊一些 js 的代码题了。下面除了问题,也写了一些自己后来的总结,如果有问题欢迎指正。总之答得不太好,欲哭无泪,挖的坑掉进去好多😂
var a = {}
var b = {}
a[b] = 3思路
先说答案:{ '[object Object]': 3 }
这个 '[object Object]' 是怎么来的呢?
先来看下下面几个例子:
var a = {}
var b = 2
a[b] = 3
console.log(a) // { '': 3 }
var a = {}
var b = [1,2]
a[b] = 3
console.log(a) // { '1,2': 3 }
var a = {}
var b = []
console.log(a) // { '': 3 }这个问题涉及的知识点是对象的字面量,回答该问题时需要把握以下两点:
console.log(a) 肯定返回 {? : 3},这个 ? 处首先应该是一个字符串类型;? 处其实需要将 b 转化为字符串,即 ({}).toString(),由于 b 是对象,应该返回 [object type],而这里 type 是 Object,所以最终返回 { '[object Object]': 3 }。(function(){
var x = y = 1;
})();
console.log(y); // 1
console.log(x); // ReferenceError: x is not defined上面的代码相当于:
var y = 1;
function fn() {
var x = y;
}var a = 10
var obj = {
a: 20,
say: () => {
console.log(this.a)
}
}
obj.say() // 10
var anotherObj = { a:30 }
obj.say.apply(anotherObj) // 10import React from “react”
const Comp = ()=>{
return <div>comp</div>
}问:为什么要 import React?是什么将 JSX 语法转化成 React?
二面最终还是凉凉了,挂掉了说明自己对于 js 的理解还是不够深刻,总之就是学习的时间还是太短了,不到四个月,实在是尽力了。未来的路还很长,继续加油吧。