let obj = { m1: "123.456", m1price: "23.342", m2: "", m2price: "", m3: "123.456", m3price: "23.342", m4: undefined, m4price: "12.3456789", m5: "123.456", m5price: null, m6: "75.234444", m6price: "12.3456789", m7: "123.456", m7price: "23.342", m8: null, m8price: "12.3456789", m9: "123.456", m9price: undefined, m10: "75.234444", m10price: "12.3456789", m11: "123.456", m11price: "23.342", m12: "75.234444", m12price: "12.3456789", };
function sum( obj, conditionFun = (key) => { return true; }, places = 2 ) { let sum = 0; for (let key in obj) { if (!!obj[key] && conditionFun(key)) { sum += parseFloat(obj[key]); } } return parseFloat(sum.toFixed(places)); }
console.log( sum(obj, (key) => { return true; }) ); // 输出:123.456 console.log( sum(obj, (key) => { return key.includes("price"); }) ); // 输出:123.456 console.log( sum(obj, (key) => { return !key.includes("price"); }) ); // 输出:123.456
function group(obj, isTableHead = true){
let result = [];
for (i = 1; i <= 12; i++) {
isTableHead && result.push({
m: m${i},
price: m${i}price,
label: ${i}月,
})
}
return result;
}
console.log(group(obj, true));
let startEndMonth = "2024-06-2026-11" function loopMonths(startEndMonth) { let months = startEndMonth.split("-").map(month => parseInt(month, 10));
for (let i = months[1]; i <= months[3]; i++) {
console.log(Month: ${i});
}
}
loopMonths(startEndMonth);
function checkForm(form){ // 1.校验必填项 let validForm = false; form.validate(valid => {validForm = valid}) if(!validForm){ return false; } return true; };
function customValidator(rule,value,callback){
}
function resetValidate(){ if(this.form.status== 1){ //重置rules的phone、email的属性值,只校验手机,不校验邮箱 this.rules.phone= [{ required: true, message: "必填" }]; this.rules.email= []; }else{ //只校验邮箱,不校验手机 this.rules.phone= []; this.rules.email= [{ required: true, message: "必填" }]; } this.$refs.form.clearValidate(); }