利用后端给的模板去渲染前端相似格式的内容

    
 
 结果 2020-03-17;19:18:00;1313625;姓名:张三;年龄:20;学历:大学;工资:302,510
已知以下两个数组对象如何获取上面的结果(不允许修改原数组)
let sourceData = {
        'indexName': '张三',
        'indexCode': '13134625',
        'age': '20',
        'type': '大学',
        'content': { 'price': '302510', 'date': '20200317', 'time': '191800' }
    }
    let warnData = [
        {
            'indexId': '1023456',
            'warnInfo': "date;time;indexCode;姓名:indexName;年龄:age;学历:type;工资:price;"
        }
    ]

解法:

    let warnInfo = warnData[0].warnInfo
    let content = sourceData.content
    const reg = new RegExp(/w+/g)

    const str = warnInfo.match(reg)
    for (let i = 0; i < str.length; i++) {
        for (key in sourceData) {
            if (key === str[i]) {
                warnInfo = warnInfo.replace(str[i], sourceData[key])
            }

        }
        for (key in content) {
            if (key === str[i]) {
                warnInfo = warnInfo.replace(str[i], content[key])
            }
        }

    }

    console.log(warnInfo)  //20200317;191800;13134625;姓名:张三;年龄:20;学历:大学;工资:302510;

日期可以通过moment.js去更改格式,工资格式可通过函数去更改

  
 



  
原文地址:https://www.cnblogs.com/shy0113/p/12568480.html