实现数组转对象 [{{label: ‘男‘, value: 0}}]转换为{0: ‘男‘, 1:‘女‘}格式

实现数组转对象 [{{label: ‘男’, value: 0}}]转换为{0: ‘男’, 1:‘女’}格式

	// 数组转对象的方法
			const arr = [{label: '男', value: 0},{label: '女', value: 1}]
			function f(arr) {
			  // 写代码
			  // reduce
			  // 方法一
			    // let obj = {};
			    //   arr.map((e) => {
			    //     obj[e.value] = e.label;
			    //   });
					// 方法二
					let obj = {};
					for (var item in arr){
					         obj[arr[item].value] = arr[item].label;
					     };
					return obj
			}
			const obj = f(arr) // obj ===> {0: '男', 1:'女'}
			console.log(obj);
			//方法三
			//数组转对象 json字符串
		
	// 方法三
		let arr = [{
		    name: 'dr',
		    ct: 'dr001'
		},
		{
		    name: 'ljy',
		    ct: 'ljy002'
		}]
		let obj = {}
		arr.forEach(item=> {
		    obj[item.name] = item.ct
		})
		 
		console.log('obj', JSON.stringify(obj, null, 2));
// 请求回来的数据
const arr = [{ staff: 1 }, { staff: 2 }, { staff: 1 }, { staff: 1 }, { staff: 1 }, { staff: 2 }]
//存入数据库的方式 1代表正式员工 2代表非正式员工
const hireType= [
    { id: 1, value: '正式' },
    { id: 2, value: '非正式' }
  ]
const obj = hireType.reduce((acc, cur) => {
  acc[cur.id] = cur.value
  return acc
}, {})
console.log(obj); //{ '1': '正式', '2': '非正式' }

// 使用
//这里提供了一个数组的数据 是由于使用vue的时候v-for已经遍历过数组了
//所以可以直接使用
console.log(obj[arr[0]['staff']]) //正式
console.log(obj[arr[1]['staff']]) //非正式
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值