【问题标题】:problem in getting value of object in Javascript在Javascript中获取对象值的问题
【发布时间】:2019-12-13 20:59:48
【问题描述】:

我正在尝试将收集数据转换为 csv,所以我正在使用 'csv-stringify' npm

我在

中转换成csv的代码
      ...auditlogs.reduce((rows, data) => {
        const newRows = []
        const newRow = {}
        console.log('data: ', data);
        console.log('data._id: ', data._id);
        console.log('data.actor: ', data.actor);
        newRow[(null, 'Actor')] = data.actor;
        newRow[(null, 'Date')] = data.date;
        newRow[(null, 'Action')] = data.action;
        newRow[(null, 'Data')] = data.object;
        newRow[(null, 'Description')] = data.description;
        newRows.push(Object.assign({}, rowProto, newRow)) 
        const newRowsNoHeaders = newRows.map(row => Object.values(row))
        return [...rows, ...newRowsNoHeaders]
      }

console.log('data: ', data) 的结果是

data =  { _id: 5ae01fa9dc9e47001a92abd4,
          actor: 'Toan',
          date: 2018-04-25T06:26:49.057Z,
          origin: '',
          action: 'Add',
          label: '',
          object:
           '{ _id: 5ae01fa9dc9e47001a92abd3,\n  name: \'Welcome\', __v: 0 }',
          description: '',
          __v: 0 }

但是当我试图获取它显示未定义的值时。

data.actor = 未定义

但只有data._id 给出了正确的值。

这是截图

有人能告诉我一个解决方案吗?

【问题讨论】:

  • 请注意,_id: 5ae01fa9dc9e47001a92abd4 是无效语法,date: 2018-04-25T06:26:49.057Z 也是如此。请创建一个minimal reproducible example - 除了语法错误之外,您当前的代码没有说明您描述的问题
  • 您需要提供minimal reproducible example。问题中没有足够的信息来确定问题所在。 (这可能是时间问题,但由于您没有显示用于检查 data.actor 的代码与用于为 data 赋值的代码之间的关系,我们可以'不能确定)。
  • @JaromandaX,但我明白了。我可以给你看截图。
  • @JaromandaX,我已经更新了我的问题,请再次查看。
  • @JaromandaX,但是我的语法怎么无效?它不是一个对象?

标签: javascript node.js string object


【解决方案1】:

顺便说一句

JSON.parse(JSON.stringify(log))

为我工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    相关资源
    最近更新 更多