2019年2月26号前端招聘面试题目

前端面试复习原文http://icaoguo.com/?p=85
prototype 节省内存所有实例化的对象的方法都指向同一个内存普通实例化都会额外划出需要的内存
闭包 闭包就是能够读取其他函数内部变量的函数像C# 的set get 函数内的私有方法开放端口给外界访问
闭包实现自增函数
var main = function(){
var data = https://www.it610.com/article/0;
return function(){
return data++;
}
}
var m = main();
利用了闭包和垃圾清除机制,只要一个函数处于被引用状态,就不会被回收。
单元测试最小可测试的范围可能是一个函数一个类
测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果表格形式
replaceAll
str.replace(/some/g,‘’);
数组排序
[{age: 1},{age: 4},{age: 3},{age: 2}].sort(function(a,b){ return a.age-b.age; })
箭头函数
var a = {
name : "222",
fun : function(){
var fn =()=> {
console.log(this.name);
};
return fn();
}
}
a.fun.call({name: "2333"}); // 2333
a.fun(); // 222
js 执行顺序单线程
setTimeOut会被放到最后线程池执行先放先执行
继承寄生继承可以得到父类的属性和原形链且不会像Cat.prototype = new Animal();
子类不会初始化2次实例方法 属性
function Cat(name){
Animal.call(this);
this.name = name || 'Tom';
}
(function(){
【2019年2月26号前端招聘面试题目】//创建一个没有实例方法的类
var Super = function(){};
Super.prototype = Animal.prototype;
//将实例作为子类的原型
Cat.prototype = new Super();
})();
var cat = new Cat();

    推荐阅读