怎么把object里的键值是true 的key值取出来,然后join(',')

怎么把object里的键值是true 的key值取出来,然后join(','),现在的数据结构是,clipboard.png
send_message:{1:true,2:true}, 我想给后台的数据结构是:send_message=1,2&is_live=1

阅读 3.4k
3 个回答

用for...in...:
这样:

const message = { 1: true, 2: true, 3: false };
const arr = [];
for (let item in message) {
    if (message[item]) {
        arr.push(item);
    }
}
console.log(arr.join(','));
Object.keys(message).filter(k => message[k] === true).join(',')

如果不存在条件筛选,需要对数组内对象的指定属性值进行拼接,代码示例如下

const array = [
    { riskReportKey: "10005", riskReportName: "产品对外投资入股未视同销售", riskReportDes: "请按税收政策规定的视同销售调增收入" },
    { riskReportKey: "10008", riskReportName: "以房冲抵各项成本费用", riskReportDes: "请按税收政策规定的视同销售调增收入" },
    { riskReportKey: "100014", riskReportName: "代理销售费用是否冲抵销售额", riskReportDes: "请按销售业务进行调整" },
]

let str = Object.keys(array).map(value => {
    return array[value].riskReportName
}).join('、')

console.log(str) //产品对外投资入股未视同销售、以房冲抵各项成本费用、代理销售费用是否冲抵销售额
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题