如何将对象的每个属性值转换为数组形式?
将对象属性值转换为数组形式的实现方法
需求说明
初始对象:
{ "tin": "TIN is required", "bic": "BIC is required", }
需要将所有属性值转换为数组形式,得到目标对象:
{ "tin": ["TIN is required"], "bic": ["BIC is required"], }
实现方案
核心逻辑就是遍历原对象的每一组键值对,把单个值包装成数组,再对应到原键名上生成新对象。下面是几种常用语言的具体实现:
JavaScript 实现
方法一:使用for...of循环遍历键值对
const originalObj = { "tin": "TIN is required", "bic": "BIC is required", }; const transformedObj = {}; for (const [key, value] of Object.entries(originalObj)) { transformedObj[key] = [value]; }
方法二:用reduce函数简洁处理
const originalObj = { "tin": "TIN is required", "bic": "BIC is required", }; const transformedObj = Object.entries(originalObj).reduce((acc, [key, val]) => { acc[key] = [val]; return acc; }, {});
Python 实现
用字典推导式一行搞定
original_obj = { "tin": "TIN is required", "bic": "BIC is required", } transformed_obj = {key: [value] for key, value in original_obj.items()}
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

