首页 > 其他 > 详细

No.2 小白面试

时间:2021-04-12 12:35:11      阅读:27      评论:0      收藏:0      [点我收藏+]

//优先级 问题

function app() {
    setTimeout(()=>{
        console.log(1-1);
        Promise.resolve().then(()=>{
            console.log(2-1)
        })
    });
    console.log(1-2);
    Promise.resolve().then(()=>{
        console.log(1-3);
        setTimeout(()=>{
            console.log(3-1)
        })
    })
}
// 1-2 、 1-3 、 1-1、 2-1、 3-1

 

为什么组件中的 data 必须是一个函数?
组件是可复用的vue实例,一个组件被创建好之后,就可能被用在各个地方,而组件不管被复用了多少次,
组件中的data数据都应该是相互隔离,互不影响的,基于这一理念,组件每复用一次,data数据就应该被复制一次,
之后,当某一处复用的地方组件内data数据被改变时,其他复用地方组件的data数据不受影响。

计算属性和watch区别
computed计算属性是用来声明式的描述一个值依赖了其它的值,当所依赖的值或者变量改变时,计算属性也会跟着改变;只是需要动态值,那就用计算属性
watch 监听的是已经在 data 中定义的变量,当该变量变化时,会触发 watch 中的方法;

组件间的通信
父子  props/event $parent/$children ref provide/inject
兄弟 bus vuex
跨级  bus vuex provide.inject

nextTick()理解
在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后,立即使用这个回调函数,获取更新后的 DOM。

Router实现原理应用技术
location.hash和window.history
目前前端路由的实现方法主要有两种方法,location.hash和window.history
History.pushState() 按指定的名称和URL(如果提供该参数)将数据push进会话历史栈,数据被DOM进行不透明处理;
History.replaceState() 按指定的数据,名称和URL(如果提供该参数),更新历史栈上最新的入口。这个数据被DOM 进行了不透明处理。
理解Vue中的Render渲染函数




   



No.2 小白面试

原文:https://www.cnblogs.com/dekui/p/14638757.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!