美文网首页
2021年WEB前端面试题

2021年WEB前端面试题

作者: 何亮hook_8285 | 来源:发表于2021-10-02 03:19 被阅读0次

    html面试题

    html中常用标签

    p 
    h1-h6 
    div
    span
    table
    tr
    td 
    tbody
    thread
    strong 
    b
    ul
    li
    ol
    li 
    img
    video
    audio
    i
    hr
    iframe
    frame
    frameset
    a
    body
    header
    dt
    dl
    form
    input
    selection
    svg
    lable
     
    
    

    html 表单元素有哪些

    form标签 可以设置请求类型get或post 可以设置请求体协议:文件上传或表单上传
    input 标签中有type类型,可设置text,number,checkbox,radio,reset,submit,hidden,file,password,image,date,email,url
    select标签,可设置单个选择或多个选择
    button 按钮
    

    a标签除了打开网页外,还能做哪些事情

    1.锚定,使用#号定位到某个元素
    2.打开email
    

    在html使用哪些标签可实现树形效果,不适用css样式。

    <ul>
     <li>
       <ul>
        <li></li>
       </ul>
     </li>
    </ul>
    
    <ol>
     <li>
       <ol>
        <li></li>
       </ol>
     </li>
    </ol>
    

    在html中div标签和span区别

    div标签属于块标签,占据一行
    span标签属于行内标签,内容占用多少就多宽
    

    在html标签中使用哪些标签嵌入网页

    iframe标签
    frame frameset标签
    

    html中使用什么标签播放音视频

    video 标签
    audio 标签
    

    css面试题

    什么是盒子模型

    在浏览器开发中我们可以将所有元素当前一个盒子,盒子是具有高宽,内外间距,边框
    

    css中常用属性

    width
    height
    font-size
    font-family
    font-style
    font-weight
    color
    backgroud-image
    background
    margin
    padding
    display:none,block,inline-block
    list-style
    border
    text-align
    text-decoration
    text-index
    text-transform
    text-shadow
    vertical-align
    list-style-image
    clear
    float
    position 定位
    left
    right
    top
    botton
    flex
    border-radius
    box-shadow
    box-sizing
    content
    

    css常用的伪类

    link
    visited
    active
    hover
    focus
    :first-child
    before
    after
    

    css3 中如何实现响应式页面

    @media  
    

    css中如何设置盒子模型

    box-sizing:content-box border-box inherit
    

    鼠标悬停在到一张图片上让它旋转效果

    使用:hover伪类,在伪类中加入
    transform:rotate(360deg)
    

    鼠标悬停在一张图片上让它向左移动效果

    使用:hover伪类,在伪类中加入
    transform:translateX(100px)
    

    鼠标悬停在一张图片上让它放大效果

    使用:hover伪类,在伪类中加入
    transform:scale
    

    鼠标悬停在一张图片上让它倾斜效果

    使用:hover伪类,在伪类中加入
    transform:skew
    

    鼠标悬停在一张图片上让它显示透明效果


    使用:hover伪类,在伪类中加入 opacity
    

    在css3中如何让图片一张图片无限旋转

    animation属性+@keyframe属性
    

    使用css3属性如何让一个正方形元素,变成一个圆形

    border-radius
    

    css中绝对定位于相对定位区别

    relative:相对于原来位置移动,元素设置此属性之后仍然处在文档流中,不影响其他元素的布局
    absolute:元素会脱离文档流,如果设置偏移量,会影响其他元素的位置定位
    

    在html5页面开发中,经常需要根据移动手机比例自动缩放布局,如果使用像素就会存在问题,请问如何解决

    rem 根据html根元素的font-size自动算出字体比例
    wv 宽度 hv 高度
    百分比方式
    

    css3 中选择器有哪些

    id选择器 
    类选择器
    属性选择器
    标签选择器
    子类选择器
    父类选择器
    伪类选择器
    通配符选择器
    

    css3 隐藏元素几种方式

    disploy:none
    opacity:0
    visibility:hidde
    

    弹性布局有哪些属性

    flex-direction
    flex-wrap
    flex-flow
    justify-content
    align-item
    align-content
    
    row(默认):主轴水平方向,起点在左端;
    row-reverse:主轴水平方向,起点在右端;
    column:主轴垂直方向,起点在上边沿;
    column-reserve:主轴垂直方向,起点在下边沿。
    

    在div设置100px宽度,div中存放了一张图片,图片大于100px,请说出怎么解决

    1、将图片宽度设置100%
    2、在div上设置overflow:hidde
    

    浏览器 javascript

    BOM(浏览器对象模型)有哪些

    window  顶级对象,可以alter
    document 文档操作
    location 网页调整,获取网站地址信息
    navigator 该对象里面保存着浏览器的各种信息,判断浏览器的各种信息就是从该对象里的属性来读取
    screen 获取屏幕信息
    history 浏览器打开历史信息对象
    

    JavaScript 使用窗口有哪些

    window.open
    window.alter
    window.confirm
    

    javascript获取元素方法

    document.getElementById
    document.getElementByclassName
    document.getElementsByTagName
    document.querySelector
    

    null,undefined的区别?

    null表示一个对象被定义了,但存放了空指针,转换为数值时为0。
    undefined表示声明的变量未初始化,转换为数值时为NAN。
    typeof(null) -- object;
    typeof(undefined) -- undefined
    

    DOM操作

    (1)创建新节点
    createDocumentFragment() //创建一个DOM片段
    createElement() //创建一个具体的元素
    createTextNode() //创建一个文本节点
    (2)添加、移除、替换、插入
    appendChild()
    removeChild()
    replaceChild()
    insertBefore() //在已有的子节点前插入一个新的子节点
    (3)查找
    getElementsByTagName() //通过标签名称
    getElementsByName() //通过元素的Name属性的值(IE容错能力较强,会得到一个数组,其中包括id等于name值的)
    getElementById() //通过元素Id,唯一
    

    数组对象有哪些原生方法,列举一下

    pop、push、shift、unshift、splice、reverse、sort、concat、join、slice、toString、indexOf、lastIndexOf、reduce、reduceRight
    forEach、map、filter、every、some
    

    javascript存储数据有几种方式,有什么区别

    cookie  
    localStore  
    sessionStore
    

    javascript常用的事件

    onclick
    ondblclick
    onLoad
    onMouse
    onchange 
    onerror
    onsubmit
    onkeyup
    onkeypress
    onkeydown
    

    let和var区别

    let 不允许重复变量名
    var 可以重复变量名称
    

    javascript如何文件上传

       var file = document.querySelector("#file").files[0];
       //创建formdata对象
       var formdata = new FormData();
       formdata.append("file",file);
       //创建xhr,使用ajax进行文件上传
       var xhr = new XMLHttpRequest();
       xhr.open("post","/");
    

    es6有哪些特性

    新增声明命令let和const
    模板字符串(Template String)
    函数的扩展,函数的默认参数,箭头函数 
    对象的扩展 
    var foo = 'bar';
    var baz = {foo};
    模块化 import和export
    Promise对象
    set/map数据结构
    json.stringfy / json.parse
    proxy / reflect
    新增数组方法 filter / map / reducer / Array.isArray / flat(数组扁平化)
    object.keys() 获取对象的key
    数组解构,对象解构 [...arr] {...obj}
    

    canvas是做什么

    1、canvas是浏览器提供的一个画板,我们通过他做图形处理,比如:写字板、视频流数据绘制到画板、3D动画效果、游戏等
    

    网络通讯

    http的get和post区别

    get 参数显示到url地址上
    post 请求参数在请求头
    

    http的响应状态有哪些

    200
    201
    301
    401
    403
    404
    430
    500
    

    前端升级后出现缓存如何解决

    在引用的资源地址后面加入版本号,通知浏览器自动刷新
    

    前端如果控制权限相关功能

    调用后端接口->返回权限编码->存储权限编码->通过权限编码控制按钮是否显示
    

    在前后端分离项目,如果实现登录功能,请说下开发流程

    调用登录接口->返回token->存储到sessionStore->封装统一请求体,并且将token存放在请求协议头->调用其它接口传递token。验证token是否过期,如果快要过期调用刷新token接口。
    

    如何验证websocket安全,请说下开发流程

    创建websocket对象->连接websocket服务器->发送token信息->后端认证token是否有效->有效后端发送消息->前端接收到信息。
    

    webpack

    前端为什么使用webpack,请说你的看法

    单页面打包(webpack支持多页面打包),模块化开发,es6转es5,异步转同步,css和javascript代码压缩,解决缓存缓存问题。
    

    webpack可以运行node api函数

    可以,webpack本来就是node编写一个构建打包程序,如果说在webpack打包的配置文件中可以调用node提供的api函数。
    

    代码版本管理

    git常用命令

    clone 
    checkout
    add
    commit
    branch
    merge
    push
    pull
    

    vue

    vue生命周期

    beforeCreate
    created 
    beforeMount
    mounted
    beforeUpdate
    updated
    

    vue 组件传值

    props
    vuex
    sessionStore/localStroge/cookie/
    

    Vue中的watch与computed区别

    computed  当页面中有某些数据依赖其他数据进行变动的时候,可以使用计算属性。
    watch和computed很相似,watch用于观察和监听页面上的vue实例,当然在大部分情况下我们都会使用computed,但如果要在数据变化的同时进行异步操作或者是比较大的开销,那么watch为最佳选择。watch为一个对象,键是需要观察的表达式,值是对应回调函数。值也可以是方法名,或者包含选项的对象。
    

    vue常用指令

    v-if v-show v-else v-for v-bind v-on v-model
    

    在项目经常经常使用Vuex作为(状态管理模式)全局数据存储,但是浏览器刷新后Vuex数据就自动丢失了,请问如何解开

    React

    react声明周期

    1、挂载过程
    constructor()
    componentWillMount()
    componentDidMount()
    
    2、更新过程
    componentWillReceiveProps(nextProps)
    shouldComponentUpdate(nextProps,nextState)
    componentWillUpdate (nextProps,nextState)
    render()
    componentDidUpdate(prevProps,prevState)
    
    3、卸载过程
    componentWillUnmount()
    

    react组件如何编写

    class HelloMessage extends React.Component {
      render() {
        return (
          <div>
            Hello {this.props.name}
          </div>
        );
      }
    }
    
    ReactDOM.render(
      <HelloMessage name="Taylor" />,
      document.getElementById('hello-example')
    );
    

    相关文章

      网友评论

          本文标题:2021年WEB前端面试题

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