如何轻松制作新阵列?

我想创建一个由名称元素组成的新数组。

let list = [
  [['firstName', 'Mary'],['lastName', 'Jenkins']],
  [['lastName', 'Kim']],
  [['firstName', 'Joe']]
];

我想提取这个数组中的名称值,然后返回它

['Mary Jekins','Kim','joe'] // i want make it

我怎样才能让它变得容易?显然,我曾经尝试过递归但我遇到了另一个困难。如果我将元素推送到一个新数组,它将是这样的。

['Mary','Jekins','Kim','Joe'] // i don't want it.

怎么治疗好?我需要一些提示。

回答

我想我会使用map, 并在地图回调中将这些子数组转换为对象,然后从对象属性构建输出字符串;解构对象给了我一个方便的时刻来默认任何一个名称,如果它丢失:

const names = list.map(entry => {
    const {firstName = "", lastName = ""} = Object.fromEntries(entry);
    return `${firstName} ${lastName}`.trim();
});

现场示例:

const names = list.map(entry => {
    const {firstName = "", lastName = ""} = Object.fromEntries(entry);
    return `${firstName} ${lastName}`.trim();
});

我在那里使用对象以防万一而不是[["firstName", "Mary"],["lastName", "Jenkins"]]你有时有[["lastName", "Jenkins"],["firstName", "Mary"]].


以上是如何轻松制作新阵列?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>