【发布时间】:2021-03-07 06:40:20
【问题描述】:
我有 2 个这样的对象:
var customerA = {firstName: "Dravid, Tendulkar"},
customerB = {firstName: "Virendra, Virat, Tendulkar"};
我想从这些字符串中找到相同的名称并使用 Proxy 将它们合并,但我不能再进一步了:
var customerA = {firstName: "Dravid, Tendulkar"},
customerB = {firstName: "Virendra, Virat, Tendulkar"};
var proxyMerge = new Proxy([customerA, customerB], {
get: (target, keyName) => {
let arr = target.map(item => item[keyName]);
let output = arr.filter(item => arr[item] == arr.includes(item)); // returns an empty array.
return output;
}
})
var customers = proxyMerge.firstName;
console.log(customers); // the output should be: ["Dravid, Tendulkar, Virendra, Virat"]
我怎样才能得到一个没有相同名称的完整数组?
【问题讨论】:
-
我完全没有理由在这里使用代理。只需创建一个新的普通对象并在其中存储数组,您可以从所有属性的循环中填充数组。
-
@Bergi 你是对的,但仍然只是为了练习。像这样使用代理的方式让我习惯了它的概念更容易理解。
标签: javascript arrays object proxy include