UNPKG

mobile-vue-datepick

Version:

A Vue.js project,vue-calendar,vuejs,vue

89 lines (84 loc) 2.03 kB
import objectAssign from 'object-assign' const mergeOptions = function ($vm, options) { const defaults = {} for (let i in $vm.$options.props) { if (i !== 'value') { defaults[i] = $vm.$options.props[i].default } } const _options = objectAssign({}, defaults, options) for (let i in _options) { $vm[i] = _options[i] } } function add(a, b) { var c, d, e; try { c = a.toString().split(".")[1].length; } catch (f) { c = 0; } try { d = b.toString().split(".")[1].length; } catch (f) { d = 0; } return e = Math.pow(10, Math.max(c, d)), (mul(a, e) + mul(b, e)) / e; } function sub(a, b) { var c, d, e; try { c = a.toString().split(".")[1].length; } catch (f) { c = 0; } try { d = b.toString().split(".")[1].length; } catch (f) { d = 0; } return e = Math.pow(10, Math.max(c, d)), (mul(a, e) - mul(b, e)) / e; } function mul(a, b) { var c = 0, d = a.toString(), e = b.toString(); try { c += d.split(".")[1].length; } catch (f) {} try { c += e.split(".")[1].length; } catch (f) {} return Number(d.replace(".", "")) * Number(e.replace(".", "")) / Math.pow(10, c); } function div(a, b) { var c, d, e = 0, f = 0; try { e = a.toString().split(".")[1].length; } catch (g) {} try { f = b.toString().split(".")[1].length; } catch (g) {} return c = Number(a.toString().replace(".", "")), d = Number(b.toString().replace(".", "")), mul(c / d, Math.pow(10, f - e)); } // 取余 function rem(a, b) { return sub(a , mul( parseInt(div(a,b)),b)) } function getDate(date){ const arr = date.toString().split('-'); // console.log(arr); arr[1] = arr[1].length ===1 && arr[1] < 10 ? '0'+arr[1]:arr[1]; arr[2] = arr[2].length ===1 && arr[2] < 10 ? '0'+arr[2]:arr[2]; return `${arr[0]}-${arr[1]}-${arr[2]}` } export { mergeOptions, add, sub, mul, div, rem, getDate }