Lodash:替换对象数组中的值

发布于 2025-01-12 02:01:41 字数 850 浏览 2 评论 0原文

要替换对象数组中的值,在本例中将 created_at 替换为“jan”、“Feb”等,我当然可以使用 map through ,如下所示。

但是使用 lodash 是否有更短的方法呢?

import React, { useEffect } from 'react'
import _ from 'lodash'
import moment from 'moment'

interface DataProps {
  clazz_name: string
  created_at: string
}

const dataone: DataProps[] = [
  {
    clazz_name: '1A',
    created_at: '2022-01-19T09:13:42.149+08:00',
  },
  {
    clazz_name: '1B',
    created_at: '2022-02-19T09:13:42.149+08:00',
  },
]

let datatwo: DataProps[] = []

function App() {
  useEffect(() => {
    dataone.forEach((item) =>
      datatwo.push({
        clazz_name: item.clazz_name,
        created_at: moment(item.created_at).format('MMM'),
      })
    )
    console.log(datatwo)
  }, [])

  return <div>Test</div>
}

export default App

任何提示或帮助将不胜感激。

To replace value in array of objects, and in this case the created_at with 'jan', 'Feb' etc, I can certainly use map through as shown below.

But is there a shorter way using lodash?

import React, { useEffect } from 'react'
import _ from 'lodash'
import moment from 'moment'

interface DataProps {
  clazz_name: string
  created_at: string
}

const dataone: DataProps[] = [
  {
    clazz_name: '1A',
    created_at: '2022-01-19T09:13:42.149+08:00',
  },
  {
    clazz_name: '1B',
    created_at: '2022-02-19T09:13:42.149+08:00',
  },
]

let datatwo: DataProps[] = []

function App() {
  useEffect(() => {
    dataone.forEach((item) =>
      datatwo.push({
        clazz_name: item.clazz_name,
        created_at: moment(item.created_at).format('MMM'),
      })
    )
    console.log(datatwo)
  }, [])

  return <div>Test</div>
}

export default App

Any hint or help would be greatly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

黑白记忆 2025-01-19 02:01:41

您可以使用 _.map 如下所示

const dataTwo = _.map(dataOne, item => ({...item, created_at: moment(item.created_at).format('MMM') }))

You can use _.map like below

const dataTwo = _.map(dataOne, item => ({...item, created_at: moment(item.created_at).format('MMM') }))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文