utils

72 阅读1分钟

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(); }