javascript - 从 JSON 对象列表中删除对象类型

标签 javascript arrays node.js json

我在nodejs中有以下类:

let id;
let totalCalls;
let totalMinutes;

class callVolume { 
    constructor(id){ 
      this.id = id;
      this.totalCalls = 0;
      this.totalMinutes = 0;
    }
}

module.exports = callVolume; 

在我的 callService.js 文件中,我导入此类,如果我使用构造函数创建一个对象:

const callVolume = require('./callVolume');
let call = new callVolume(1);

如果我控制台日志调用对象,它会显示:

callVolume {
              "id": 1,
              "totalCalls" : 0,
              "totalMinutes" : 0
           }

如果有一个列表,它会不断重复类名 callVolume:

[callVolume {
              "id": 1,
              "totalCalls" : 0,
              "totalMinutes" : 0
           },
 callVolume {
              "id": 1,
              "totalCalls" : 0,
              "totalMinutes" : 0
           }]

我什至不知道为什么会显示这个,有什么办法可以删除它。我想要这样的东西:

          [{
              "id": 1,
              "totalCalls" : 0,
              "totalMinutes" : 0
           },
           {
              "id": 1,
              "totalCalls" : 0,
              "totalMinutes" : 0
           }]

我编写的用于比较两个对象列表的方法:

const compareJsonObjects = function(firstList, secondList) {
  if(firstList.length != secondList.length) return false
  else {
    for(i = 0; i<firstList.length; i++) {
      if(firstList[i].id != secondList[i].id) return false;
      if(firstList[i].totalCalls != secondList[i].totalCalls) return false;
      if(firstList[i].totalMinutes != secondList[i].totalMinutes) return false;
    }
   return true;
  }

最佳答案

这只是调试器通知您对象的类型,或者更确切地说它源自哪个类。如果您希望它只是一个纯对象,而没有指向该类的构造函数属性,则可以使用 Object.assign

let call = Object.assign({}, new callVolume(1));

这将制作一个裸副本并将值从类实例传输到对象中。

关于javascript - 从 JSON 对象列表中删除对象类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54175374/

相关文章:

javascript - 如何防止复合组件重新渲染?

arrays - Meteor、MongoDB通过订阅获取数组的一部分

node.js - 在没有 Node 的情况下卸载 typescript

javascript - 在 JavaScript(NodeJs) 中调用对象内部的函数名称的区别

javascript - 右对齐在 D3 中创建的 HTML 表格

javascript - 如何在javascript中正确获取json数据

javascript - 如何在 Angular 单击按钮时显示不受欢迎的复选框?

python - 使用 numpy 搜索大数组

php - Laravel 只验证发布的项目并忽略验证数组的其余部分

javascript - 多个文件流而不是下载到磁盘然后压缩?