1 个回答

照着你的数据格式写的,这种问题还是直接贴代码比较好

var setting = {
    bgImg:'aaaaa',
    text:'文案文案',
    text2:"文案文案2",
    text3:"文案文案3"
}

var winning = ['中奖1','中奖2','中奖3','中奖4','中奖5','中奖6']

const buildWinningList = function (setting,winning) {
    let settingMap = new Map() 
    let result = []
    for(let key in setting) {
        let winningMatch = winning.filter(el => {
            if(el.match(/\d/) && key.match(/\d/)) {
                return el.match(/\d/)[0] == key.match(/\d/)[0]
            }
            if(!key.match(/\d/)) {
                return el.match(/1$/)
            }
        })[0]
        if(setting[key].search('文案')>=0) {
            settingMap.set(key,winningMatch)
        }
    }
    settingMap.forEach((val,key) => {
        result.push({key:key,val:val})
    })
    return result
}

console.log(buildWinningList(setting,winning))
[
  { key: 'text', val: '中奖1' },
  { key: 'text2', val: '中奖2' },
  { key: 'text3', val: '中奖3' }
]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题