美文网首页
“搜狐”面经

“搜狐”面经

作者: 艾石溪 | 来源:发表于2017-05-18 23:33 被阅读157次

    昨天面了搜狐,面了3个小时,感觉有点筋疲力尽,今天来补一下面经。

    • 笔试题
      一 : 多项选择题(因为题目太多,可能记不了那么全了)
      1:以下选项中,输出为true的是(D)
      A:null instanceof object B: typeof null === "null"
      C: NaN >= NaN D: [] !== []

    2: 以下方法中是Array的操作方法的是(BCD)//感觉大体是这么个意思
    A: splice B: join C: split D: toString

    3: 以下关于jquery的几个方法转换正确的是()//考察的是jquery,因为对那些方法不熟,貌似是根据印象胡乱选的,已经不太记得选项。

    4:关于跨域的知识点的考察()//挺细的,然后选项不太记得了,涉及到各种跨域方法以及里面的一些细节。

    5: 以下的输出是数组的是()//D项貌似忘记了
    A:(function(){
    return this.arguments;
    }())
    B: [].split.call();//大体是这个样子
    C:("Hello World").match(/./g);

    6: 以下输出为true的是(ABC)//D又忘记了
    A:Function instanceof Object B: Boolean(String(false))
    C: Object instanceof Function

    7: 还有考css选择器的优先级()//选项不太记得 比较细 要扣字眼

    8: 以下是Element元素的方法的是()
    A:insertBefore B:insertAfter C:replaceChild

    二:程序输出题:
    1: //考察的是原型链
    function A(){
    this.c = 5;
    }
    A.prototype.say = function(){
    this.a = 1;
    }
    var al = new A();
    console.log(a1.a, a1.b, a1.c);
    A.prototype = {
    a : 3,
    b : 4,
    c : 5
    };
    var a2 = new A();
    console.log(a1.a, a1.b, a1.c);
    console.log(a2.a, a2.b, a2.c);

    2: //考察js没有块作用域
    function f(t){
    console.log(i);
    for(var i = 0; i < t; i ++){
    console.log(i);
    }
    console.log(i);
    }

        f(3);
    

    3: //考察函数变量的提升
    function f(){
    console.log(test());
    function test(){
    return 418;
    }
    console.log(test());
    }
    f();

    4: 考察js的执行顺序
    function f(){
    var testString = "thinking";
    console.log(testString);
    setTimeOut(function(){
    console.log((6*9).toString(13));
    }, 0);
    console.log(testString);
    }

    5: 考察this的作用域//感觉题目记不太清楚了
    function test(){
    var testValue = "Got It";
    function got(){
    return this.testValue;
    }
    }
    var v = new test();
    var get = v.got;
    console.log(v.got());
    console.log(get());
    console.log(get.call(v));

    三:简答题
    1: 说一下你知道的this作用域?

    2: event事件onclick()与addEventListener()的区别?
      onclick()只能添加单一的事件,若添加多个事件,会发生覆盖现象。addEventListener()可以添加多个事件,实现多个事件的并行。
    

    四:编程题
    1:判断一个变量是不是整数?
    2: 大体意思为:编写一个函数实现function leftWord(str, targetLength, addStr), 若第三个参数不存在,则用空格来表示。输出实例:
    leftWord("", 4); //返回" "2个空格
    leftWord("Hello", 4, "world"); //返回Hello
    leftWord("Hello", 12, "world"); //返回 worldwoHello
    3: 查找允许的最大的font,大体意思,给出一个div,给定div的宽和高,计算出允许的最大字。
    4:没太读懂,考的是贪心算法

    面试
    一面:
    1: 笔试题涉及的知识点基本都考察了,都讲了一遍

    2: 程序,比如一组数据[20, 30, 40, 40, 40, 50, 60],找出比40大的个数。

    二面:
    1: position, float, display, box-sizing等等,各种组合蹂躏在一起,然后写输出结果。

    2: 说说你对vue的理解。如何进行通信,渲染等。

    3: 给了几个应用的场景,这种情况下如何实现。
    比如: 我的左边栏长度不变,我右边拦随着内容的增多会变大,若内容很小的时候,就和左边栏的高度是一样的??(记得答的使用min-height)实现,好像不太满意,说可以使用(table-cell)不知道是不是这样写。

    4: button是什么属性的,当我设置了同样的高度,一个向上偏移,一个向下偏移,该如何实现其平整。(不能使用绝对定位,不能使用margin-top等),不知道要使用啥。

    。。。

    相关文章

      网友评论

          本文标题:“搜狐”面经

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