javascript - 将嵌套对象转换为 JavaScript 中的上一层对象

标签 javascript node.js

给定 json : -

{
    "_id": "5c1c4b2defb4ab11f801f30d",
    "name": "Ray15",
    "email": "ray15@gmail.com",
    "deviceToken": "dgtssgeegwes",
    "deviceType": "IOS",
    "tokens": [
        {
            "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI1YzFjNGIyZGVmYjRhYjExZjgwMWYzMGQiLCJhY2Nlc3MiOiJhdXRoIiwiaWF0IjoxNTQ1MzU4MTI2fQ.YdK0MjOm7Lff22uTFITQdic0gKdMZRpsmRee-yejDpQ"
        }
    ]
}

所需的 json: -

{
  "_id": "5c1c4b2defb4ab11f801f30d",
  "name": "Ray15",
  "email": "ray15@gmail.com",
  "deviceToken": "dgtssgeegwes",
  "deviceType": "IOS",
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI1YzFjNGIyZGVmYjRhYjExZjgwMWYzMGQiLCJhY2Nlc3MiOiJhdXRoIiwiaWF0IjoxNTQ1MzU4MTI2fQ.YdK0MjOm7Lff22uTFITQdic0gKdMZRpsmRee-yejDpQ"
}

我想借助 JavaScript 中 npm 的 lodash 库转换 JSON 或建议任何其他库,

这可能是一个愚蠢的问题,请正确解释一下,我是 javascript 的新手,正在尝试学习 node.js。如果您需要更多解释,请评论我。

感谢帮助

最佳答案

您实际上并不需要库,您只需分配属性并删除其他属性即可。

但是tokens是一个数组,这表明可能有多个。这只会采用第一个(obj.tokens[0].token)。由于对象不能有重复的键,因此您只能拥有一个具有所需格式的 token (如果这很重要)。

let obj = {
    "_id": "5c1c4b2defb4ab11f801f30d",
    "name": "Ray15",
    "email": "ray15@gmail.com",
    "deviceToken": "dgtssgeegwes",
    "deviceType": "IOS",
    "tokens": [
        {
            "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJfaWQiOiI1YzFjNGIyZGVmYjRhYjExZjgwMWYzMGQiLCJhY2Nlc3MiOiJhdXRoIiwiaWF0IjoxNTQ1MzU4MTI2fQ.YdK0MjOm7Lff22uTFITQdic0gKdMZRpsmRee-yejDpQ"
        }
    ]
}

obj.token = obj.tokens[0].token 
delete obj.tokens
console.log(obj)

关于javascript - 将嵌套对象转换为 JavaScript 中的上一层对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53878394/

相关文章:

php - 使用 html、php、js 从我的数据库中删除行时出现问题

javascript - 使用 JavaScript 解析 URL

javascript - 如何解决 React.js 中的此路由问题?

node.js - 等待异步方法完成

mysql - 在 '' 中 Sequelize 未知列 'on clause'

javascript - 通过传递 ID 获取输入类型

javascript - 获取用户设置 'first day of week' 值的星期 DATE 对象的第一个日期

javascript - 关闭由toggle()函数打开的元素

javascript - 如何访问nodejs函数表达式中的变量

javascript - 为什么node.js突然使用更少的内存?