欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

记一次面试中遇到的问题。

程序员文章站 2022-05-11 10:51:05
...

1.假设我用构造函数fun构造出一个新对象obj,构造之后在fun的原型对象上加一个新的属性age为10,请问obj.age是什么?

function fun(){
    this.name = 'a'
}
var obj = new fun();
fun.prototype.age = 10;
obj.age = ?

答案为obj.age = 10;我的理解是因为obj. _ proto _ (实例对象的原型)指向的是fun.prototype(构造函数的实例原型),是一个对象,指向的是地址。

2.在ie浏览器状态下获取实例对象的原型对象用什么方法?
答案为Object.getPrototypeOf(obj);ie不提供这个–proto–是为了安全不让程序员获取到Object原型对象去修改。

3.sass循环用法
sass可以用@for,@while,@each作为循环。

4.react中什么时候用shouldComponentUpdate?
shouldComponentUpdate用于提高组件的性能,接受四个参数,props,nextProps,state,nextState,可以根据这些做判断,return true or false控制组件是否渲染。

5.es6有哪些新特性?Map和Set新数据类型中新增项的方法?
答:首先我说了promise,被否决了,面试官小哥哥说这是es5就有的。。- -..
一些较简单的,比如箭头函数,let和const,class类,字符串模板,解构赋值
然后比较恶心的什么Generator,yield啥的。
实用的module,
还有新的数据类型Set,Map,这个我在面试别人的时候,很多人都不知道,不过确实不常用。。Set新增用add,Map用set。
其他还有一些数组对象啥的新的api。

6.kissy和seajs的区别?