收藏
评论

合并对象的疑惑【好像发现了不是问题的问题】

例子

const old = required('A.js');
const exists = this.data.a; //与old无关系,格式相等
//合并两个对象
exists = Object.assign(exists, old);
 
//问题来了
//跨文件再次引用
const add = required('A.js');
//此时打印为合并后的对象.......
//console.log(add); 实际等于exists,跨作用域一样
 
//解决自己的问题
//合并时加入空对象 {}
exists = Object.assign({}, exists, old);
 
//再次引用时为正确对象
 
问:

required 引用文件不是独立的么???


看来还是得恶补一下JS。。。


最后一次编辑于  2018-09-15  (未经腾讯允许,不得转载)
收藏赞 0

2 个评论

  • teo~
    teo~
    2018-09-28

    在其它文件引入 A.js ,里面对象就跟合并的一样,内存驻留

    2018-09-28
    赞同
    回复
  • 总之随便啦
    总之随便啦
    2018-09-28

    我怎么看不懂你的问题,合并时,你格式既然一样,那就肯定前者被后者覆盖了啊,exists的值就是A.js的值,再怎么调用也都是是A.js的值啊

    2018-09-28
    赞同
    回复