/** 
 | 
 * 为对象、数组、字符串等数据去空 
 | 
 * 
 | 
 * @param data 数据 
 | 
 * @returns {string|null|*} 
 | 
 */ 
 | 
export function trim (data) { 
 | 
  if (data == null) { 
 | 
    return null 
 | 
  } 
 | 
  if (typeof data === 'string') { 
 | 
    return data.trim() 
 | 
  } 
 | 
  if (data instanceof Array) { 
 | 
    for (const item of data) { 
 | 
      trim(item) 
 | 
    } 
 | 
  } 
 | 
  if (typeof data === 'object') { 
 | 
    for (const key in data) { 
 | 
      data[key] = trim(data[key]) 
 | 
    } 
 | 
  } 
 | 
  return data 
 | 
} 
 | 
  
 | 
export function addPrecision(num1, num2) { 
 | 
  return numAdd(num1, num2); 
 | 
} 
 | 
  
 | 
  
 | 
  
 | 
/**  
 | 
* 加法运算,避免数据相加小数点后产生多位数和计算精度损失。  
 | 
*  
 | 
* @param num1加数1 | num2加数2  
 | 
*/  
 | 
function numAdd(num1, num2) {  
 | 
  var baseNum, baseNum1, baseNum2;  
 | 
  var precision;// 精度  
 | 
  try {  
 | 
    baseNum1 = num1.toString().split(".")[1].length;  
 | 
  } catch (e) {  
 | 
    baseNum1 = 0;  
 | 
  }  
 | 
  try {  
 | 
    baseNum2 = num2.toString().split(".")[1].length;  
 | 
  } catch (e) {  
 | 
    baseNum2 = 0;  
 | 
  }  
 | 
  baseNum = Math.pow(10, Math.max(baseNum1, baseNum2));  
 | 
  precision = (baseNum1 >= baseNum2) ? baseNum1 : baseNum2; 
 | 
  return ((num1 * baseNum + num2 * baseNum) / baseNum).toFixed(precision);  
 | 
} 
 | 
   
 |