【问题标题】:Array Converts in typescript,javascript在 typescript、javascript 中转换数组
【发布时间】:2018-12-17 22:52:09
【问题描述】:

我在创建所需的数组形式时遇到了一些问题。我想删除名为 service_id 的键并将其数据放入外部。

 "restaurant_services": Array[2][
            {
              "service_id": {
                "added_on": "2018-07-07T07:56:35.054Z",
                "deleted": false,
                "_id": "5b4072332c94ca607ffcf65b",
                "service_name": "Cafe",
                "service_status": 1,
                "__v": 0
              },
              "_id": "5b433cd7e066e6623b9c9ce6"
            },
            {
              "service_id": {
                "added_on": "2018-07-07T10:01:05.083Z",
                "deleted": false,
                "_id": "5b408f61caeca976851923c4",
                "service_name": "Dine In",
                "service_status": 1,
                "__v": 0
              },
              "_id": "5b433cd7e066e6623b9c9ce5"
            }
    ],

我想把上面的数组转换成下面的数组。

"restaurant_services": Array[2][
        {
            "added_on": "2018-07-07T07:56:35.054Z",
            "deleted": false,
            "_id": "5b4072332c94ca607ffcf65b",
            "service_name": "Cafe",
            "service_status": 1,
            "__v": 0
        },
        {
            "added_on": "2018-07-07T10:01:05.083Z",
            "deleted": false,
            "_id": "5b408f61caeca976851923c4",
            "service_name": "Dine In",
            "service_status": 1,
            "__v": 0
        }
],

对这种类型的数组有什么建议吗?

【问题讨论】:

  • 你可以使用arr.map(({service_id})=>service_id)
  • 看起来您正在使用 MongoDB。您在寻找$replaceRoot operator 吗?

标签: javascript arrays typescript converter


【解决方案1】:

您可以使用map 删除service_id。这是下面的sn-p。

参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

const restaurant_services = [
  {
    "service_id": {
      "added_on": "2018-07-07T07:56:35.054Z",
      "deleted": false,
      "_id": "5b4072332c94ca607ffcf65b",
      "service_name": "Cafe",
      "service_status": 1,
      "__v": 0
    },
    "_id": "5b433cd7e066e6623b9c9ce6"
  },
  {
    "service_id": {
      "added_on": "2018-07-07T10:01:05.083Z",
      "deleted": false,
      "_id": "5b408f61caeca976851923c4",
      "service_name": "Dine In",
      "service_status": 1,
      "__v": 0
    },
    "_id": "5b433cd7e066e6623b9c9ce5"
  }
]

const restaurant_services_updated = restaurant_services.map(service => service.service_id);

console.log(restaurant_services_updated)

【讨论】:

    【解决方案2】:

    使用 Array.prototype.map() https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map

    你的情况

    var originalArr  = [
            {
              "service_id": {
                "added_on": "2018-07-07T07:56:35.054Z",
                "deleted": false,
                "_id": "5b4072332c94ca607ffcf65b",
                "service_name": "Cafe",
                "service_status": 1,
                "__v": 0
              },
              "_id": "5b433cd7e066e6623b9c9ce6"
            },
            {
              "service_id": {
                "added_on": "2018-07-07T10:01:05.083Z",
                "deleted": false,
                "_id": "5b408f61caeca976851923c4",
                "service_name": "Dine In",
                "service_status": 1,
                "__v": 0
              },
              "_id": "5b433cd7e066e6623b9c9ce5"
            }
    ]
    
    var  newArr = arr.map(function(currValue){
    
    
     return currValue.service_id
     })
    
    console.log('desired result',newArr)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-09-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-18
      • 1970-01-01
      • 2019-05-16
      相关资源
      最近更新 更多