12 工具函数封装

34 阅读1分钟

1. 深度克隆

function deepClone(v) {
        if (!isObject(v)) return v;
        let tempVal;
        if (Array.isArray(v)) {
          tempVal = [];
          for (let i = 0; i < v.length; i++) {
            tempVal[i] = deepClone(v[i]);
          }
        } else {
          tempVal = {};
          for (let key in v) {
            tempVal[key] = deepClone(v[key]);
          }
        }
        return tempVal;
      }

      function isObject(obj) {
        return typeof obj === "object" && obj !== null;
      }