当前位置: 首页> 财经> 金融 > 今日国际新闻最新消息十条_常用软件开发模型_hao123网址之家官网_seo关键词排名优化销售

今日国际新闻最新消息十条_常用软件开发模型_hao123网址之家官网_seo关键词排名优化销售

时间:2025/7/10 7:59:45来源:https://blog.csdn.net/qq_59625204/article/details/147124481 浏览次数:1次
今日国际新闻最新消息十条_常用软件开发模型_hao123网址之家官网_seo关键词排名优化销售

一、Map对象转换成数组指定形式

方法 1: 使用 Array.from + 映射函数

        直接通过 Array.from 的第二个参数(映射函数)转换: 

const map = new Map([['a', 123], ['b', 456]]);const result = Array.from(map, ([key, value]) => ({label: key,value: value
}));console.log(result);
// 输出: [{ label: 'a', value: 123 }, { label: 'b', value: 456 }]

方法 2: 展开运算符 + map

        先将 Map 展开为数组,再调用 map 转换: 

const map = new Map([['a', 123], ['b', 456]]);const result = [...map].map(([key, value]) => ({label: key,value: value
}));console.log(result);
// 输出: [{ label: 'a', value: 123 }, { label: 'b', value: 456 }]

‌‌方法 3: for...of 循环遍历

        通过遍历 Map 手动构建数组:

const map = new Map([['a', 123], ['b', 456]]);
const result = [];for (const [key, value] of map) {result.push({ label: key, value });
}console.log(result);
// 输出: [{ label: 'a', value: 123 }, { label: 'b', value: 456 }]

方法 4: 使用 reduce 函数

        通过 Array.from 或展开运算符配合 reduce

const map = new Map([['a', 123], ['b', 456]]);const result = [...map].reduce((arr, [key, value]) => {arr.push({ label: key, value });return arr;
}, []);console.log(result);
// 输出: [{ label: 'a', value: 123 }, { label: 'b', value: 456 }]

方法 5: 极简箭头函数写法

        结合展开运算符和隐式返回:

const map = new Map([['a', 123], ['b', 456]]);
const result = [...map].map(([k, v]) => ({ label: k, value: v }));console.log(result);
// 输出: [{ label: 'a', value: 123 }, { label: 'b', value: 456 }]

二、数组指定形式转换成Map对象

方法 1: 使用 Array.map() 和 Map 构造函数

        直接将数组映射为 [key, value] 格式,传入 Map 构造函数:

const arr = [{ label: 'a', value: 123 }, { label: 'b', value: 456 }];
const map = new Map(arr.map(item => [item.label, item.value]));// 验证
console.log(map.get('a')); // 123
console.log(map.get('b')); // 456

方法 2: 使用 reduce 遍历构建

        通过 reduce 逐项插入到 Map 中:

const arr = [{ label: 'a', value: 123 }, { label: 'b', value: 456 }];
const map = arr.reduce((acc, item) => {acc.set(item.label, item.value);return acc;
}, new Map());console.log(map);
// 输出:new Map([["a",123],["b",456]])

方法 3: for...of 循环遍历

        显式遍历数组并插入键值对:

const arr = [{ label: 'a', value: 123 }, { label: 'b', value: 456 }];
const map = new Map();
for (const item of arr) {map.set(item.label, item.value);
}console.log(map);
// 输出:new Map([["a",123],["b",456]])

方法 4: 使用 forEach 遍历

        利用数组的 forEach 方法:

const arr = [{ label: 'a', value: 123 }, { label: 'b', value: 456 }];
const map = new Map();
arr.forEach(item => map.set(item.label, item.value));console.log(map);
// 输出:new Map([["a",123],["b",456]])

方法 5: 动态生成键值对(极简箭头函数)

        结合解构和隐式返回:

const arr = [{ label: 'a', value: 123 }, { label: 'b', value: 456 }];
const map = new Map(arr.map(({ label, value }) => [label, value]));console.log(map);
// 输出:new Map([["a",123],["b",456]])

关键字:今日国际新闻最新消息十条_常用软件开发模型_hao123网址之家官网_seo关键词排名优化销售

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: