美文网首页
面试题集

面试题集

作者: revert | 来源:发表于2018-07-04 01:08 被阅读21次

AdMaster笔试题

  1. 变量作用域
var a = 'hello';
(function(){
  a = 'world';
})();
console.log(a);  // "world"


var a = 'hello';
(function(){
 var a = 'world';
})();
console.log(a);  // "hello"
  1. 闭包
var foo = function(){
  var count = 0;
  return function(){
    return count+=1;
  }
};
var fn = foo();
console.log(fn());  // 1
console.log(fn());  // 2
console.log(fn(3));  // 3
console.log(fn(6));  // 4
  1. this指向
var person = {
  age:18,
  say:function(){
    return this.age;
  }
};
var say = person.say;
console.log(person.say());  // 18

console.log(person.say(20));  // 18

console.log(person.say({age:20}));  // 18

console.log(say());  // undefined

console.log(say.call(person));  // 18

person.age += 1;
console.log(say.call(person));  // 19

console.log(say.apply(person,[32]));  // 19

这里基本功不扎实可能被参数迷惑,console.log(person.say({age:20}));我以为会自动调用setter方法,觉得有坑,写了20,实际上还是18。

云鸟科技

  1. js执行顺序以及提升
function fn(a) {
    console.log(a);  
    a = 1;
    console.log(a);
    var a = function() { //函数1
        console.log(1);
    }
    console.log(a);

    function a() { //函数2
        console.log(2);
    }
    console.log(a);
}
fn(2);

输出结果:
[Function: a] //函数2
1
[Function: a] //函数1
[Function: a] //函数1
这里考察js的对象创建和执行顺序,执行上下文(EC)创建的过程是有先后顺序的:参数声明 > 函数声明 > 变量声明,函数的声明比变量优先级要高,并且定义过程不会被变量覆盖,除非是赋值,但函数声明会覆盖参数
这里有一篇文章解释的很明白:深入理解JavaScript执行上下文、函数堆栈、提升的概念

  1. BFC理解及应用
    主要理解什么是BFC(块级格式化上下文),对于处理margin的重叠,清除浮动,以及双列伸缩布局的应用,可以自行百度了解。

必要商城

  1. iframe的优缺点(seo?同域不同域修改dom?)
  2. 描述一下HTML的语义化
  3. jsonp的原理以及不足之处
  4. 以下可以用来在浏览器和服务器之间传输的是?
  • cookies
  • localStorage
  • sessionStorage
  • session
  1. DOCTYPE作用,包含哪几种类型?
  2. 闭包是什么,有什么特性,对页面有什么影响?
  3. 写出下列代码输出结果
function A(name){
    if(name)this.name = name;
};
function B(name){
    this.name = name;
};
function C(name){
    this.name = name||'test';
};
A.prototype.name = 'Tom';
B.prototype.name = 'Bob';
C.prototype.name = 'Alice';
console.log(new A().name+new B().name+ new C().name);
// Tomundefinedtest

易到用车

var num = 10;
var obj = {
    num :8,
    inner:{
        num:6,
        fn:function(){
            console.log(this.num);
        }
    }
};
num = 888;
obj.inner.fn();  //6
var foo = obj.inner.fn;
foo();  //888
(obj.inner.fn)();  //6
(obj.inner.fn = obj.inner.fn)(); //888

self

  1. 事件循环执行顺序
console.log('start');
var promise = new Promise((reslove,reject) => {
    console.log('promise-define');
    
    reslove('promise-reslove');
});
function excuFn(callback) {
        callback();
}

var log = () => console.log('callback');
setTimeout(() => {
    console.log('timeout'); 
}, 0);

promise.then((data) => console.log(data),(err) => {console.log(err);
});
excuFn(log);
console.log('end');

结果:
start
promise-define
callback
end
promise-reslove
timeout
此处看callback是同步执行的(不考虑xhr和延时处理)。

原型链与构造函数

function Foo(){
    getName=function(){
        console.log(1)
    };
    return this;
}
Foo.getName = function(){
    console.log(2);
};
Foo.prototype.getName = function(){
    console.log(3);
};
var getName = function () {
    console.log(4);
}
function getName(){
    console.log(5)
};

Foo.getName();  //2
getName(); //4
Foo().getName(); //1
getName();  //1
new Foo.getName();  //2
new Foo().getName(); //3
new new Foo().getName(); //3

相关文章

  • Java面试题集

    Java面试题集(1-50) Java面试题集(51-70) Java面试题集(71-85) Java面试题集(8...

  • Android面试题集(2019-04-04总结)

    Android面试题集(2019-04-04总结)   一份Android面试题集,适应于实习 & 初级工程师 &...

  • 关于iOS面试题汇总(栏目持续更新)

    整理的一些iOS面试相关问题,持续更新,敬请关注 iOS面试题题集--iOS面试题集[https://www.ji...

  • 关于iOS面试题汇总(栏目持续更新)

    整理的一些iOS面试相关问题,持续更新,敬请关注 iOS面试题题集--iOS面试题集[https://www.ji...

  • Android面试总结二

    参考文章 40个Android面试题Java面试题集Android名企面试题及知识点整理Android面试题收集较...

  • web前端面试题总结

    web前端试题集 WEB前端面试题

  • Javascript Array

    数组常用方法 面试题 求两个数组的交集和差集 交集 差集

  • PHP 经典面试题集

    这篇文章介绍的内容是关于PHP 经典面试题集 PHP 经典面试题集,有着一定的参考价值,现在分享给大家,有需要的朋...

  • 集锦1 iOS面试

    iOS面试题锦集 1.Difference between shallow copy and deep copy?...

  • Java面试题收藏

    Java面试题收藏 一篇比较好的面试题整理: Java面试题集 自己的一些收藏: 静态变量和实例变量的区别 静态变...

网友评论

      本文标题:面试题集

      本文链接:https://www.haomeiwen.com/subject/yyesuftx.html