2020-06-29--广州某达信用

1,对于vue和react区别,选型如何考虑?

答:

  • React:React是一个用于创建可重用且有吸引力的UI组件的库。它非常适合代表经常变化的数据的组件。
  • Vue:Vue.js是一个开源JavaScript框架,能够开发单页面应用程序。它还可以用作Web应用程序框架,旨在简化Web开发
    共同点
  1. 都是为了一起与核心库使用而构建的,并将其他功能如路由和全局状态管理交给相关库;
  2. 两者都是基于Virtual DOM模型,
  3. 提供了以响应式和组件化的视图组件。
    组成结构
  • React.js是使用虚拟DOM(基于文档对象模型),有丰富的JavaScript库,具有灵活的结构和可扩展性。

  • Vue.js包含基于HTML的标准模板,可以更轻松地使用和修改现有应用程序,可以更顺畅的集成(组件),有更好的性能和更小的体积;
    组成结构

  • 当组件发生变化时,React会触发整个组件树的重新渲染,需要使用额外的属性阻止不相关的子组件的渲染。

  • 在Vue的应用中,组件的依赖是在渲染过程中自动追踪的,所以系统能准确的知道哪个组件确实需要重新渲染。
    JSX与HTML

  • React使用JSX-一种声明式JavaScript XML,允许开发人员利用JavaScript的强大功能编写组件。

  • Vue使用HTML模板创建视图。
    路由和状态管理

  • React使用Flux / Redux,它代表单向数据流。

  • Vue使用Vuex,是专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化
    跨平台应用程序开发

  • React的React Native是一个成熟且广泛使用的本机渲染应用程序平台。

  • Vue框架被广泛应用于weex页面开发,致力于使开发者能基于通用跨平台的 Web 开发语言和开发经验,来构建 Android、iOS 和 Web 应用

总结

  • React:需要构建移动应用程序;专业和出色的社区支持;需要构建大型应用程序;轻量级,易于版本迁移。

  • Vue:有最新的文档和最简单的语法;更小,更快,更灵活;丰富的HTML模板,易于开发;组件的可重用性;需要构建有吸引力的单页面应用程序和Web应用程序

2.请简述vue3.0 proxy优缺点

答:知识点链接:http://www.cppcns.com/wangluo/javascript/319626.html

3.请描述cookies,sessionStorage

⒈localStorage长期存储数据,浏览器关闭数据后不丢失;

⒉sessionStorage数据在浏览器关闭后自动删除;

⒊cookie是网站为了标识用户身份而存储在用户本地终端(Client Side)上的数据(通常经过加密)。cookie始终在同源的http请求中携带(即使不需要)都会在浏览器和服务器端间来回传递。session storage和local storage不会自动把数据发给服务器,仅在本地保存;

⒋存储大小:cookie数据大小不会超过4K,session storage和local storage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或者更多;

⒌有期时间:local storage存储持久数据,浏览器关闭后数据不丢失,除非自动删除数据。session storage数据在当前浏览器窗口关闭后自动删除。cookie 设置的cookie过期时间之前一直有效,即使窗口或者浏览器关闭;

知识点链接:https://www.cnblogs.com/pengc/p/8714475.html

4.CSS 优化、提高性能的方法有哪些?

慎重使用高性属性:浮动、定位;
去除空规则;
属性值为0时,不加单位;
属性值为浮点数0.**时,可以省略小数点前的0;
标准化各种浏览器前缀,带浏览器前缀的在前,标准的在后;
不使用@import前缀,它会影响css加载速度;
充分利用css继承属性,减少代码量;
抽象提取公用样式,减少代码量;
选择器优化嵌套,尽量避免层级过深;
将css文件放在页面的最上面;

知识点链接:https://www.jianshu.com/p/00dda16dcb02

5.vue如何监听某个属性的变化?

1深度监控,监测所有属性的变化
watch:{
    obj:{
        handler(newVal,oldVal){

        },
        deep:true
    }
}
2.监测某个属性的变化:
watch:{
    'obj.a':{
        handler(newVal,oldVal){

        }
    },
    '$route.path'(newVal,oldVal){
        //监听路由的变化
    }

}
3计算属性
computed:{
    a1(){
        return this.obj.a;
    }
}

4.watch与computed的区别?
作用:两者都可以用来监听属性的变化。

computed:根据其他依赖的属性,来形成新的属性;

watch:用来监听data或props属性中数据的变化,从而触发相关操作;

区别:

computed:
1、是基于data中声明过或父组件传递的props中的数据计算得到的;

2、computed结果会被缓存,只有当依赖的数据发生变化才会重新计算;

3、不支持异步,当computed内有异步操作时无效,无法监听数据的变化;

4、computed中的属性有get和set方法,但是默认走get方法。

watch:
1、watch监听的数据必须是data中声明过或父组件传递的props中的数据;

2、watch不会被缓存,当监听的数据变化时,直接出发响应的操作。

3、支持异步

4、watch方法中有两个属性:immediate(组件加载立即触发方法),deep(深度监听)

5、使用场景:需要执行异步操作,或者开销较大的操作。

6.font-style属性可以让赋值为oblique,oblique是什么意思

答:italic和oblique都是向右倾斜的文字,但区别在于Italic是指斜体字,而Oblique是倾斜的文字,对于没有斜体的字体应该使用Oblique属性值来实现倾斜的文字效果.

7.如何预防中间人攻击

答:https://www.jianshu.com/p/210c296eb836

8.['1','2','3'].map(parseInt)

结果为 1 NaN NaN
知识点链接:https://www.cnblogs.com/zsp-1064239893/p/12286842.html

9.js实现图片懒加载

知识点链接:https://blog.csdn.net/w1418899532/article/details/90515969

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容