前端vue性能提升之Object.freez()

Object上有一个数据冻结的方法,被冻结的对象不能对他进行拓展,对冻结的对象进行添加,修改,删除等操作是无效的,但是对象的读取是正常的。看代码:

    var obj = {
      name: '张三',
      age: 18,
      height: 190
    }
    // 输出打印原对象
    console.log('原对象', obj);
    Object.freeze(obj)
    // 添加属性
    obj.sex = '男'
    console.log("添加sex后的对象", obj);
    // 引用值替换
    obj = {
      name:'李四',
      age:20
    }
    console.log('引用替换的对象',obj);

再来看打印结果:


从打印结果可以看出数据冻结的只是对象的值,我们依然可以替换掉其引用值,那为什么说数据冻结能提升性能呢?因为vue不会对冻结的对象进行数据的劫持,这在一定程度上是提升了我们代码的编译速度,因此,我们可以将纯展示的数据冻结以提升性能

posted on 2021-08-15 09:52  九零菜菜  阅读(252)  评论(0编辑  收藏  举报