美文网首页
北森云计算前端面试

北森云计算前端面试

作者: 甜柚小仙女 | 来源:发表于2019-04-17 20:48 被阅读0次
    1.react的生命周期以及方法
    • 初始化(挂载):
      • getDefaultProps:获得实例默认属性
      • getInitialState:获得实例初始状态
      • componentwillMount:组件即将被初始化,渲染到页面上
      • render:生成虚拟DOM结点
      • componentDidMount:组件初始化完成,可以发送请求,事件监听
    • 更新:
      • componentwillReceiveProps:组件将要接收到属性
      • shouldComponentUpdate:改善性能
      • componentWillUpdate:组件即将更新,不能修改属性与状态
      • render
      • componentDidUpdate:组件已经更新,响应props和state改变
    • 销毁阶段
      -componentWillUnmount:组件即将销毁
    2.mvvm在react上面的体现
    • modal:this.state中保存的数据以及组件中的方法和生命周期中实现的业务逻辑
    • view-modal:JSX,也就是virtual-dom的语法糖
    • view:基于虚拟DOM生成的真实DOM以及css
    3.原型实现继承以及弊端
    • children.prototype = new Father()
      即子类的原型为父类的实例(父类实例属性与方法会移到子类原型中),子类原型的[[prototype]]指向父类原型。
    • 弊端:所有子类实例共享原型中的方法和属性
    • 解决:使用组合继承(借用构造函数实现对于实例的继承,原型链实现对原型的继承)
      在子类中调用父类构造函数(A.call(this))
    4.promise实现两个接口完成后再执行某个方法
    • 用Promise.all()将多个promise合成为一个promise
    5.es6的新语法怎么实现兼容
    • <script type="text/babel"></script>
    • react使用babel插件将es6转为es5
    6.跨域的实现以及弊端
    • cors(跨域资源共享)
    • jsonp(只能实现get请求)
    • 配置代理
    7.事件代理
    • 通过监听父元素,利用事件冒泡触发事件
    8.event的兼容
    • window.event||event
    • event.target||event.srcElement
    9.react的性能优化
    • shouldComponentUpdate
    10.所有组件都需要key吗?key的作用
    • react利用key识别组件,认为相同key的组件是同一个组件,则之后相同key的组件将不会被创建
    • key最多被应用在数组动态创建的子组件的情况
    • key值应该保证唯一且稳定
    11.js、css怎么实现兼容浏览器
    • 优雅降级、渐进增强
    • 判断浏览器
    12.数组的方法
    13.检测数组的方法
    • isArray()
    • instanceof()
    • Object.prototype.toString().call(target)==="[object Array]"
    • target.constructor === Array

    相关文章

      网友评论

          本文标题:北森云计算前端面试

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