为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript如何将具有值的对象转换为键值对的对象

Javascript如何将具有值的对象转换为键值对的对象

慕尼黑5688855 2023-03-03 13:20:35
如何将set只有值的对象转换为键值对包含相同值的对象key?let set = new Set()set.add(a)set.add(example)console.log(set)//OUTPUT {"a", "example"}//perform some operation to get result below ?到{"a":"a","example":"example"}
查看完整描述

5 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

Set 有一个entries方法,您可以将其传递给Object.fromEntries

let set = new Set();

set.add("a");

set.add("example");


const result = Object.fromEntries(set.entries());


console.log(result);


查看完整回答
反对 回复 2023-03-03
?
料青山看我应如是

TA贡献1772条经验 获得超7个赞

您可以将其转换为值数组并执行Array.prototype.reduce

let set = new Set()

set.add('a')

set.add('example')


const res = Array.from(set).reduce((acc, val) => ({ ...acc, [val]: val }), {})


console.log(res)


查看完整回答
反对 回复 2023-03-03
?
SMILET

TA贡献1796条经验 获得超4个赞

将集合扩展到 anArray并将其减少到 anObject


const set = new Set();

set.add("a");

set.add("b");

set.add("valueC");

console.log(

  [...set]

    .reduce( (acc, val) => ({...acc, [val]: val}), {} )

);


查看完整回答
反对 回复 2023-03-03
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

使用forEach

const set = new Set();

set.add('a');

set.add('example');

const result = {};

set.forEach(i => result[i] = i);


console.log(result)



查看完整回答
反对 回复 2023-03-03
?
蛊毒传说

TA贡献1895条经验 获得超3个赞

如果你的意思是["a", "example"]:


var data=["a", "example"];

var obj=data.map(item=>({item:item}));

console.log(obj);


查看完整回答
反对 回复 2023-03-03
  • 5 回答
  • 0 关注
  • 120 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信