2020暑假实习-腾讯TEG前端二面

2020暑假实习-腾讯TEG前端二面

机试部分

一、简答题

1. 常用的浏览器内核:
  1. webkit
  2. blink
  3. gecko
  4. trident
2. 外边距重叠

外边距重叠是指两个连续的元素,它们各自具有的margin会覆盖对方的margin,造成最终显示在浏览器上的效果是只存在较大的margin(不存在外边距重叠的话则会显示为两者的margin之和)

3. CSS3属性
  1. opacity
  2. transform
  3. display: flex
  4. border-radius
  5. display: grid
  6. transition
  7. animation
4. JS变量类型
  1. 基本类型:null、undefined、number、string、boolean、symbol
  2. 引用类型:object
5. ES6特性
  1. let/const
  2. 解构赋值
  3. 模版字符串
  4. Promise
  5. Generator
  6. Async/Await
  7. 模块化import/export
  8. Symbol
  9. class
  10. 箭头函数
  11. Proxy
  12. Reflect
  13. Array的扩展,如:Array.from、Array.of、扩展字符串…
6. 性能优化
  1. 减少HTTP请求方面
    1. 使用sprite图
    2. webpack等打包工具
  2. 网络连接速度优化
    1. 接入CDN
    2. 使用HTTP 2.0
  3. 减少重排/重绘
    1. 离线处理样式
    2. 将样式放到class里进行集中处理
    3. 分离样式的读写操作
    4. 尽可能避免使用table布局
  4. 资源压缩
  5. 使用事件代理减少内存开销
7. GET和POST的区别
  1. get是幂等操作,每次使用get请求得到的结果都是一样的,即它的操作是没有副作用的,因此get请求可以存储为书签,保存在历史记录里;

    post请求是非幂等的,每次使用post请求得到的结果都是不一样的,即它的操作使用副作用的,因此不能存储为书签、保存在历史记录里。

  2. get将请求参数以query字符串的方式附着在url之后,是可见的,安全性差,参数长度有限制(实际为浏览器对url长度的限制);

    post的请求参数保存在请求实体里,不可见,安全性略好一点点,长度大小没有限制。

  3. get只能使用ASCII编码,而post没有限制。

  4. get只能传递字符串参数,post还能传递二进制文件等其他类型。

  5. 个人认为get和post在实质上没有区别,它们本质都是tcp连接,区分它们作用的是当前的规范和后台响应请求的具体实现方式。

8. http返回码
  1. 1XX系列 表示信息提示,继续处理请求
    1. 100 Continue 示意客户端继续发送请求
    2. 101 Switching Protocol 示意切换传输协议,多为对Upgrade请求头的回应
  2. 2XX系列 表明正确处理请求
    1. 200 Success 表明请求已处理完毕
    2. 204 No Content 表明请求已处理完毕,但没有返回请求实体
    3. 206 Partial Content 表明请求已处理完毕,返回要求范围内的资源
  3. 3XX系列 表示重定向
    1. 301 永久性重定向 表明请求的资源已经永久性的移动到另一个位置
    2. 302 Found 暂时性重定向 表明请求的资源暂时被移动到另一个位置
    3. 303 暂时性重定向 表明请求的资源暂时被移动到另一个位置,且应该使用get重新发送请求
    4. 304 Not Modified 对条件请求的回应,多用来表明请求的资源没有发生变动
  4. 4XX系列 表示请求发生错误,且错误原因在客户端
    1. 400 Bad Request 表明请求有语法错误
    2. 401 Unauthorized 表明请求需要进行身份认证
    3. 403 Forbidden 禁止访问资源,可能是因为没有通过身份验证
    4. 404 Not Found 表明请求的资源不存在
  5. 5XX系列 表示请求发生错误,且错误原因在服务器端
    1. 501 Internal Error 表明服务器在处理请求时内部发生错误
    2. 503 Service Unavailable 表明服务器暂时不可用
    3. 504 Gateway Timeout 表明服务器从上游服务器请求资源超时

二、编程题

1. CSS实现箭头三角形
<div class="arrow"></div>
.arrow {
   
    border: 10px solid;
    border-color: transparent transparent transparent black;
}
2. CSS实现单行文本溢出显示省略号
&
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值