文章目录
获取当前日期方法(YYYY-MM-DD格式)
var myDate = new Date();
var time = myDate.toLocaleDateString().split('/').join('-');将1970/08/08转化成1970-08-08
获取当前时间并格式化
1、安装
npm install moment
2、引入
import moment from 'moment'
3、获取今天凌晨时间
var start_time = moment(new Date().setHours(0, 0, 0)).format(
'YYYY-MM-DDTHH:mm:ss+08:00'
)
4、获取当前时间
var end_time = moment(new Date()).format('YYYY-MM-DDTHH:mm:ss+08:00')
5、获取当前最后的时间
var end_time = moment(new Date().setHours(23, 59, 59)).format('YYYY-MM-DDTHH:mm:ss+08:00')
6、函数
getTodayStartTimeAndEndTime(time) {
time = time ? time : new Date()
var start_time = moment(new Date(time.setHours(0, 0, 0))).format(
'YYYY-MM-DDTHH:mm:ss'
)
var end_time = moment(new Date()).format('YYYY-MM-DDTHH:mm:ss')
return {
startTime: start_time,
endTime: end_time,
}
},
javascript怎么实现range函数
python 效果是这样的
js可以这样实现
[...Array(5).keys()]
数字累加
安装 mathjs
npm install mathjs --save
工具类定义
在src 目录下建一个utils 创建一个math_method.js
import { all, create } from 'mathjs'
const config = {
number: 'BigNumber',
precision: 10
}
const math = create(all, config)
// 加
export function add(item, total) {
return parseFloat(math.add(math.bignumber(item), math.bignumber(total)))
}
// 减
export function subtract(item, total) {
return parseFloat(math.subtract(math.bignumber(item), math.bignumber(total)))
}
// 乘
export function multiply(item, total) {
return parseFloat(math.multiply(math.bignumber(item), math.bignumber(total)))
}
// 除
export function divide(item, total) {
return parseFloat(math.divide(math.bignumber(item), math.bignumber(total)))
}
methods引用工具类
methods引用数学计算工具
import { add } from '@/utils/math_method'
export default {
data() {
return {
payment: {
pay_child: []
}
}
},
methods: {
handleSumCnyMoney() {
var cny_money_total = 0
this.payment.pay_child.forEach(item => {
try {
cny_money_total = add(item.cny_money, cny_money_total)
} catch (err) {
console.log(err)
}
})
this.payment.cny_money = cny_money_total
}
}
}
watch监听属性变化,进行加减乘除
data() {
return {
change_form: {
handling_fee: null, // 手续费
upgrade_fee: null, // 升舱费
payment_price: null, // 付款金额
profit: null, // 订单利润
}
}
}
watch: {
change_form: { // 深度监听,可监听到对象、数组的变化
handler(val, oldVal) {
if (val.handling_fee !== null && val.upgrade_fee !== null && val.payment_price !== null) {
var eceive = add(val.handling_fee, val.upgrade_fee)
this.change_form.profit = subtract(eceive, val.payment_price)
}
},
deep: true // true 深度监听
}
}