【问题标题】:How to get a separate word out of an object key value?如何从对象键值中获取单独的单词?
【发布时间】:2020-11-23 19:37:02
【问题描述】:

我需要从fullName 中获取firstName

我该怎么做?

const users = [
  ...,
  {
    firstName: undefined,
    lastName: 'Holy',
    fullName: 'Jack Holy',
  },
  ...,
];
restoreNames(users)
// users === [..., {firstName: 'Jack', lastName: 'Holy', fullName: 'Jack Holy'}, ...]

【问题讨论】:

  • fullName.split(' ')[0]
  • 函数 restoreNames(users) { users.firstName = users.fullName.split(' ')[0]; } 返回错误:TypeError: Cannot read property 'split' of undefined /restoreNames.js:16:34)
  • @YuriiParfinenko users 是一个数组,你需要在其中索引一个特定的对象:users[0].firstName = users[0].fullName.split(' ')[0];,如果你想对所有对象都这样做,你可以使用循环
  • @NickParsons 辛苦了,谢谢

标签: javascript javascript-objects key-value


【解决方案1】:

只需添加:

function restoreNames(users) {
  return users.map((user) => {
    return {
      firstName: user.firstName ? user.firstName : user.fullName.split(" ")[0],
      lastName: user.lastName ? user.lastName : user.fullName.split(" ")[1],
      fullName: user.fullName
        ? user.fullName
        : `${user.firstName} ${user.lastName}`,
    };
  });
}

【讨论】:

  • 我创建了其他情况的函数,例如 lastName 不存在或 fullName
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-24
  • 1970-01-01
  • 2021-11-04
  • 2020-06-09
  • 2013-02-06
  • 2017-04-15
相关资源
最近更新 更多