var array = [ { name:'zl', mj:[{xm:'张三'}], fj:[{xm:'李四'},{xm:'小王'}] }, { name:'zl', mj:[{xm:'马六'}], fj:[{xm:'王五'},{xm:'小李'}] }, ]处理成一个一一对应的新对象
时间: 2024-02-14 18:13:45 浏览: 30
如果要将原数组处理成一一对应的新对象,可以使用 `map` 方法对原数组进行映射。下面是一个示例代码:
```
var array = [
{
name: 'zl',
mj: [{ xm: '张三' }],
fj: [{ xm: '李四' }, { xm: '小王' }]
},
{
name: 'zl',
mj: [{ xm: '马六' }],
fj: [{ xm: '王五' }, { xm: '小李' }]
},
];
var newArray = array.map(function (item) {
return {
mj: item.mj[0].xm,
fj: item.fj[0].xm
};
});
console.log(newArray);
```
输出结果为:
```
[
{ mj: '张三', fj: '李四' },
{ mj: '马六', fj: '王五' }
]
```
新数组中的每个元素都对应了原数组中的一个对象,元素中的 `mj` 和 `fj` 属性值分别来自于原数组对象中的 `mj` 和 `fj` 属性值的第一个元素的 `xm` 值。
相关问题
var array = [ { name:'zl', mj:[{xm:'张三'}], fj:[{xm:'李四'},{xm:'小王'}] }, { name:'zl', mj:[{xm:'马六'}], fj:[{xm:'王五'},{xm:'小李'}] }, ],处理成一个新对象
可以通过遍历原数组,将每个元素中的属性值合并到新对象中,实现将原数组处理成一个新对象的操作。下面是一个示例代码:
```
var array = [
{
name: 'zl',
mj: [{ xm: '张三' }],
fj: [{ xm: '李四' }, { xm: '小王' }]
},
{
name: 'zl',
mj: [{ xm: '马六' }],
fj: [{ xm: '王五' }, { xm: '小李' }]
},
];
var newObj = {
mj: [],
fj: []
};
array.forEach(function (item) {
newObj.mj = newObj.mj.concat(item.mj);
newObj.fj = newObj.fj.concat(item.fj);
});
console.log(newObj);
```
输出结果为:
```
{
mj: [
{ xm: '张三' },
{ xm: '马六' }
],
fj: [
{ xm: '李四' },
{ xm: '小王' },
{ xm: '王五' },
{ xm: '小李' }
]
}
```
新对象中的 `mj` 和 `fj` 分别包含了原数组中所有对象的 `mj` 和 `fj` 属性值。
d = {"张三":123456,"李四" : 654321 , "王五":113355} name = input("请输入要查询的姓名") for i in d: if i == name: print(d[name]) else: print("没找到")
您的第一个问题涉及字典操作,输入一个姓名,判断该姓名是否在字典中,并输出该姓名对应的数字,如果不在字典中则输出“没找到”。
您可以将输入的姓名和字典中的键值对进行比较,如果匹配成功则输出相应的值,否则输出“没找到”。代码可以按照如下方式编写:
d = {"张三":123456, "李四":654321, "王五":113355}
name = input("请输入要查询的姓名: ")
for i in d:
if i == name:
print(d[name])
break
else:
print("没找到")
阅读全文