javascript - 如何从js中的数组中删除具有共同值的对象?
问题描述
有一个像这样的对象数组
"medios":[
{
"Key":"1",
"Text":"Cheque"
},
{
"Key":"2",
"Text":"Tarjeta de Crédito"
},
{
"Key":"3",
"Text":"Tarjeta de Crédito"
},
{
"Key":"4",
"Text":"Tarjeta de Crédito"
},
{
"Key":"5",
"Text":"Transferencia Bancaria"
}
]
我需要能够删除具有相同“文本”值的对象(例如,Tarjeta de Crédito),直到我只保留其中一个。知道如何实现这一目标吗?
我尝试在数组上使用循环,但不知道如何删除特定对象
解决方案
您可以使用 aMap
来键入您的数据,Text
以便您只会获得唯一的条目。然后从该映射中获取值以再次重建您的数组:
const obj = {"medios":[{ "Key":"1","Text":"Cheque"},{ "Key":"2","Text":"Tarjeta de Crédito"},{ "Key":"3","Text":"Tarjeta de Crédito"},{ "Key":"4","Text":"Tarjeta de Crédito"},{ "Key":"5","Text":"Transferencia Bancaria"}]};
obj.medios = Array.from(new Map(obj.medios.map(m => [m.Text, m])).values());
console.log(obj.medios);
推荐阅读
- vba - Chartobject.Delete 没有删除图表?
- android-jobscheduler - Oppo Realme1 Job Schduler 定期工作的最小间隔为 1 小时
- regex - 匹配正则表达式并用特殊字符替换错误
- python - 带有列名变量的 Executemany() SQL-Update 语句
- python - Google 日历 API 无法获取事件 colorid - Python
- android - 如何强制 ORM lite 生成正确的 DELETE 查询?
- android - OpenCV Native Android cvtColor 崩溃
- python - 将十进制转换为 MM:SS:MS Django
- mongodb - Mongodb:连接到副本集
- django - Django 基本模板位置