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

字节一二面---8.10

程序员文章站 2024-03-25 20:08:40
...

一面

  1. 下面的输出

    var a = {
      name: 'bytedance',
      func: function() {
        console.log(this.name);
      }
    };
    
    
    Var fun1 = a.func;
    fun1();
    

2. 一秒后输出1,两秒后输出4,三秒后输出5...



```javascript
let a = [1, 4, 5, 7, 9]
 // 1s
 1
 // 2s
 4
 // 3s
 5
```


  1. display都有哪些属性?
    inline、inline-block、block的区别?像是margin、padding和宽高都是哪些可以设置?

注意1.45版本大于1.5。因为45版肯定大于第五版。
字节一二面---8.10

  1. 数据类型都有哪些?Symbol怎么创建的?
  2. vue的v-if和v-for和原理

第一轮还有几题,我给忘了,想起来再补。

第二轮

  1. 封装个简单版的axios();

  2. 封装个可以检测所有数据类型的函数

    //我答的
    function testType(type){
        if(typeof type !='object'){
            return type;
        }
        if(type===null) return null;
        let str =  Object.prototype.toString.call(type);
        return str.slice(8,str.length-1);
    }
    console.log(testType({}));
    

3. 下面的输出

 ~~~JavaScript
 log(1);
 setTimeout(()=>{log(2)}, 0);
 Promise.resolve().then(()=>{log(3)})
 var p = new Promise(res=>{
     log(4)
     setTimeout(()=>{
         res(5)
         log(6)
     },0)
 })
 p.then(e=>{log(e)})
  1. 说一下原型链?
    原型链继承的弊端?
    怎么避免?

    我答了用Object.create(),这样可以复制一个原型链,不影响原本的父链。
    又问还有其他方法嘛?
    我说ES6继承
    ES6继承会不会影响父链?
    我答:不会,ES6继承源码就是用Object.create()实现的。
    

  1. 数组扁平化输入:
    [1,2,[3,4,[5,{a:1},[6]]]]

输出:[1,2,3,4,5,{a:1},6]

function flat(arr){
       arr = JSON.stringify(arr).replace(/\[|\]/g,'');
       arr = '['+arr+']';
       return JSON.parse(arr);
   }
   console.log(flat([1,2,[3,4,[5,{a:1},[6]]]]));
   function flat(arr){
       if(typeof arr !='object') return arr;
       if(Object.prototype.toString.call(arr)=='[object Object]'){
           console.log(arr);
           return arr
       } 
       let res=[];
       for(let i=0;i<arr.length;i++){
           res[i] = flat(arr[i]);
       }
       return res;
   }
   console.log(flat([1,2,[3,4,[5,{a:1},[6]]]]));
  1. tcp建立的过程?

    讲了三次握手
    为什么要三次握手呢?
    两次握手不也可以建立链接嘛?
    提示:tcp是全双工的通信

    讲讲你对udp的理解?

  2. 你都知道哪些http状态码?
    200、301、304、307、403、404、500、503