html

  1. h5有哪些新的标签

css

  1. 响应式如何实现
  2. div双向居中
  3. css3有那些属性
  4. 伪类伪元素区别
  5. 介绍一下标准的CSS的盒子模型?CSS 如何设置这两种模型?
  6. box-sizing:content-box/border-box
  7. 内容(content)、填充(padding)、边框(border)、边界(margin) 。
  8. CSS选择器有哪些?
  9. display 有哪些值?说明他们的作用?
  10. position 的值?
  11. CSS3有哪些新特性
  12. 伪类和伪元素是什么

    伪元素 ::after ::before ::first-letter ::first-line ::selection

    伪类 :focus、:hover、:active

  13. 怎么让Chrome支持小于12px 的文字
  14. CSS Sprites是什么?它的优势和劣势?
  15. rgba() 和 opacity 的透明效果有什么不同?
  16. opacity 可以有过渡效果嘛?
  17. 如何水平并且垂直居中一张背景图
  18. 哪些属性可以继承?

js

  1. JavaScript有哪些数据类型,它们的区别?

    JavaScript共有八种数据类型,分别是 Undefined、Null、Boolean、Number、String、Object、Symbol、BigInt。

    栈:原始数据类型(Undefined、Null、Boolean、Number、String)

    堆:引用数据类型(对象、数组和函数)

  2. 数据类型检测的方式有哪些

    typeof其中数组、对象、null都会被判断为object,其他判断都正确

    instanceof可以正确判断对象的类型,其内部运行机制是判断在其原型链中能否找到该类型的原型。instanceof只能正确判断引用数据类型,而不能判断基本数据类型。

    判断数组的方式有哪些Array.isArrray(obj),其他...

  3. null和undefined区别

    typeof 进行判断时,Null 类型化会返回 “object”

  4. 数组有那些方法
    方法 是否改变原数组 特点
    forEach() 数组方法,不改变原数组,没有返回值
    map() 数组方法,不改变原数组,有返回值,可链式调用
    filter() 数组方法,过滤数组,返回包含符合条件的元素的数组,可链式调用
    for...of for...of遍历具有Iterator迭代器的对象的属性,返回的是数组的元素、对象的属性值,不能遍历普通的obj对象,将异步循环变成同步循环
    every() 和 some() 数组方法,some()只要有一个是true,便返回true;而every()只要有一个是false,便返回false.
    find() 和 findIndex() 数组方法,find()返回的是第一个符合条件的值;findIndex()返回的是第一个返回条件的值的索引值
    reduce() 和 reduceRight() 数组方法,reduce()对数组正序操作;reduceRight()对数组逆序操作
  5. 前端缓存
  6. call,apply,bind的区别
  7. slice和splice的区别
  8. 什么是 DOM 和 BOM
  9. 面向对象的基本要素

    继承 封装和多态

vue

  1. 生命周期
  2. 父子组件传值
  3. 父子组件,打印created,mounted
  4. v-show指令,v-if的区别
  5. 如何让css只在当前组件中起作用
  6. computed 和 watched 的区别
  7. Vue的双向数据绑定是如何实现的?

    简单来说就是使用数据劫持和发布订阅的设计模式实现的

  8. Vue如何监听某个属性值的变化 watch
  9. Vue中给data中的对象属性添加一个新的属性时会发生什么,如何解决?

    原因在于在Vue实例创建时,obj.b并未声明,因此就没有被Vue转换为响应式的属性,自然就不会触发视图的更新,这时就需要使用Vue的全局api Vue.$set()

  10. Vue的路由实现:hash模式 和 history模式

微信小程序

  1. 小程序页面有哪些传递数据的方法

    使用全局变量实现数据传递

    页面跳转或重定向时,使用url带参数传递数据

    使用组件模板 template传递参数

    使用缓存传递参数

    使用数据库传递数据

综合

  1. 前端优化
  2. 描述http请求发送后的过程
  3. HTTP状态码

    1**: 信息,服务器收到请求,需要请求者继续执行操作
    2**: 成功,操作被成功接收并处理
    3**: 重定向,需要进一步的操作以完成请求
    304 Not Modified 所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。
    4**: 客户端错误,请求包含语法错误或无法完成请求
    400 客户端请求的语法错误,服务端无法理解
    403 Forbidden 服务器理解请求客户端的请求,但是拒绝执行此请求
    404 Not Found 服务器无法根据客户端的请求找到资源(网页)
    5**: 服务器错误,服务器在处理请求的过程中发生了错误
    500 服务器内部错误
    502 Bad Gateway 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应

  4. HTTP 常用 Methods

    HTTP1.0定义了三种请求方法: GET、POST 和 HEAD方法。

    HTTP1.1新增了五种请求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。

    预检请求 Priflight Request 即在请求之前需要首先由浏览器自发发送 Options 请求的请求

    预检请求的范围
    一般 HTTP1.1 中的方法请求默认都会触发预检请求
    但是简单请求满足一下条件也可以触发 Options 请求
    带有自定义头信息
    MIME Type Not in text/plain、multipart/form-data、application/x-www-form-urlencoded

  5. 设计模式