字节飞书 一面

440 阅读2分钟

html

  1. video的自动播放是哪个属性?
    autoplay。忘记了,说了auto.
  2. 怎么理解html语义化?
    回答上来了,过于口语了。
  3. post和get的区别是什么?
    答了(1)请求头、url(2)安全性 (3)可用字符集 (4)post传递的数据更多 还是太口语

css

  1. 代码实现两栏布局
  2. 盒子模型的margin、padding、border、content的分布
  3. 垂直布局时margin-top和margin-bottom重叠

js

1、判断输出,考查this关键字在异步中的影响,以及settimeout异步输出

obj(){
    this.name = "lihua"
    this.class = [lll,rrr,sss]
    say(): function(){
            for(var i = 0; i < 3; i++){
                setTimeout(
                    function(){
                        console.log(this.name + i)
                        console.log(this.class[i])
                    }, 0)
                console.log(i)
             }
           }
    }
obj.say()

补充提问:怎么样让setTimeout不输出3,而是0,1,2
答:闭包包起来
2、一道简单的promise结合settimeout判断输出题?
补充提问:微任务有哪些?

算法

一个整数数组,乱序,无重复,如何在低于o(n^2)的时间复杂度下,输出满足指定和的两个数? getSum(arr,num){ }
例如:[7,4,5,3,2,1,6],输入7,有2,5 3,4
属实是不知道怎么回事,差点没想出来,一直在想双指针,想了两三分钟,才想到map
问:时间复杂度是多少?

网络

304,500,504是什么?
304没说出来具体是什么,说了是发出请求时,文件头包含last-modified,如果是更新好的 ,会返回200,如果需要更新,会返回304
然后补充提问了,怎么看出来是否要更新的?
回答了缓存
问504是什么?说服务器发生错误,说错了, 问500是什么?500是服务器发生错误
查了一下,504是
504 (网关超时) 服务器作为网关或代理,但是没有及时从上游服务器收到请求。