微信小程序 – 深 / 浅拷贝实现方法

时间:2020-8-24 作者:admin


前言

在微信小程序中,你无法 直接使用常规浏览器环境中的深浅拷贝方法。

但可以借助 utils.js 实现,下面是方法。

创建深浅拷贝函数

依次打开小程序目录【utils】→【utils.js】,写入深拷贝函数并暴露出去。

// utils.js

// 对象深拷贝函数
const deepClone = function(initalObj) {
  var obj = {};
  obj = JSON.parse(JSON.stringify(initalObj));
  return obj;
}

// 将深拷贝函数暴露出去
module.exports = {
  deepClone
}

页面使用

首先需要在页面顶部 require 引入 utils.js,然后使用即可。

// index.js


// 引入 utils.js (使用深拷贝)
const utils = require('../../../utils/util')

Page({

  /**
   * 页面的初始数据
   */
  data: {
	obj:{a:1, b:2},//原对象
  },

  /**
   * 自定义事件
   */
  demo: function(){
 	// 深拷贝obj
 	var newObj = utils.deepClone(this.data.obj)//深拷贝副本
  },
  
})
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。