腾讯前端工程师社招面经(一面、二面)
一面——电话
先自我介绍一下笔者:
1.知道什么是事件委托吗?
2.对Promise了解吗?
3.window的onload事件和domcontentloaded谁先谁后?
4.你之前遇到过跨域问题吗?是怎么解决的。
二面——QQ远程面
一.有一个类如下:
function Person(name) {
this.name = name
}
let p = new Person('Tom');复制代码
1. p.__proto__等于什么?
2. Person.__proto__等于什么?
解析:
1,2两问其实问的是同一个问题,都是考察原型链相关的知识,我们只需要记住一句话就可以迎刃而解。实例的__proto__属性(原型)等于其构造函数的prototype属性。实例p的构造函数为Person,而Person的构造函数为Function,结果就一目了然了。
3.若将题干改为
function Person(name) {
this.name = name
return name;
}
let p = new Person('Tom');复制代码
实例化Person过程中,Person返回什么(或者p等于什么)?
4.若将题干改为
function Person(name) {
this.name = name
return {}
}
let p = new Person('Tom');复制代码
实例化Person过程中,Person返回什么(或者p等于什么)?
解析
构造函数不需要显示的返回值。使用new来创建对象(调用构造函数)时,如果return的是非对象(数字、字符串、布尔类型等)会忽而略返回值;如果return的是对象,则返回该对象(注:若return null也会忽略返回值)。
5. typeof和instanceof的区别
6.如果Student inherit from Person(Student类继承Person,需是基于原型的继承),let s = new Student('Lily'),那么s instanceof Person返回什么?
7. new和instanceof的内部机制
8.下面代码输出什么?
9.刚刚我们用到了箭头函数,说一下箭头函数This指向问题?
10. for...in迭代和for...of有什么区别?
#面经##社招##前端工程师##腾讯#