Vue计算属性computed

Vue计算属性

计算出来的结果保存在属性中,保存在内存中,可以想象成一个缓存

Demo:和定义方法进行对比

  • <body>
    
    <div id="vue">
        <!--需要通过括号去调用-->
    
        <p>{{currentTime1()}}
        <!--主要区别就是上面通过方法来调用,下面通过属性来调用-->
        <p>{{currentTime2}}</p>
    
    </div>
    
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script >
        var vm = new Vue({
            el:'#vue',
            data:{
                message:"hello"
            },
            methods:{
                currentTime1:function () {
                    return Date.now();
                }
            },
            /*不建议重名*/
            computed:{
                currentTime2:function () {
                    this.message;
                    return Date.now();
                }
    
            }
        });
    </script>
    </body>
    
  • 这是一个缓存的概念,主要体现在能节省计算机的性能,比如一些不常用的资源,方法是每调用一次是会重新执行一次计算结果的,但是有些不常用的数据,不用经常刷新,只是在改变内部数据后才需要进行刷新,像是mybatis的缓存一样,光是查询的时候是不刷新缓存的,当执行修改操作的时候缓存被清空,这是数据显示的区别

  • 还有就是调用的一个区别,定义的方法通过加()来调用,而计算属性是计算好得出的结果存放在属性中,使用属性值就开始计算,然后存放在属性中,属性又存放在内存中,调用的时候速度快,数据变更重新计算

  • image-20200905184804827

  • 当currentTime2中的数据发生改变时,缓存重新刷新,属性值重新计算,currentTime1()本身就是一个方法,每调用一次就要重新计算一次

  • 属性存放在内存中,速度会快一点点,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值