| | |
| | | num = num-0 |
| | | return (num > 9999) ? (num / 10000).toFixed(2) + 'w' : num.toFixed(0) |
| | | } |
| | | export const getObjType = obj => { |
| | | var toString = Object.prototype.toString; |
| | | var map = { |
| | | '[object Boolean]': 'boolean', |
| | | '[object Number]': 'number', |
| | | '[object String]': 'string', |
| | | '[object Function]': 'function', |
| | | '[object Array]': 'array', |
| | | '[object Date]': 'date', |
| | | '[object RegExp]': 'regExp', |
| | | '[object Undefined]': 'undefined', |
| | | '[object Null]': 'null', |
| | | '[object Object]': 'object' |
| | | }; |
| | | if (obj instanceof Element) { |
| | | return 'element'; |
| | | } |
| | | return map[toString.call(obj)]; |
| | | }; |
| | | /** |
| | | * 对象深拷贝 |
| | | */ |
| | | export const deepClone = data => { |
| | | var type = getObjType(data); |
| | | var obj; |
| | | if (type === 'array') { |
| | | obj = []; |
| | | } else if (type === 'object') { |
| | | obj = {}; |
| | | } else { |
| | | //不再具有下一层次 |
| | | return data; |
| | | } |
| | | if (type === 'array') { |
| | | for (var i = 0, len = data.length; i < len; i++) { |
| | | obj.push(deepClone(data[i])); |
| | | } |
| | | } else if (type === 'object') { |
| | | for (var key in data) { |
| | | obj[key] = deepClone(data[key]); |
| | | } |
| | | } |
| | | return obj; |
| | | }; |
| | | |
| | | export default { |
| | | numUnitConversion |