javascript - 如何从响应数组数据设置数据对象

标签 javascript arrays object

我有这样的响应数据

{
  "data": {
    "title": "dashboard",
    "description": "just test dashboard",
    "photos": [
      {
        "file_name": "12345454.jpg",
        "photo_name": "indonesia"
      },
      {
        "file_name": "567686.jpg",
        "photo_name": "jakarta"
      }]
  }
}

然后我需要使用不带 photos 变量的数组的 file_name 更改数据响应。

预期:file_name[0] 将从数组的 file_name 索引中进行符号

像这样

{
  "data": {
    "title": "dashboard",
    "description": "just test dashboard",
    "file_name[0]": "12345454.jpg",
    "file_name[1]": "567686.jpg"
  }
}

我尝试过使用照片 map ,但没有成功

this.data = this.data.photos.map((item, idx) => {
    let data = {
      file_name: item.file_name
    }
    return data
  })
  this.data.photos.map((item, idx) => {
    this.$set(this.data, 'file_name', item.file_name)
  })

最佳答案

尝试以下

let data = {"title": "dashboard","description": "just test dashboard","photos":[{"file_name": "12345454.jpg","photo_name": "indonesia"},{"file_name": "567686.jpg","photo_name": "jakarta"}]};

data.photos.forEach((v,i) => data[`file_name[${i}]`] = v.file_name);
delete data.photos;
console.log(data);

关于javascript - 如何从响应数组数据设置数据对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53205973/

相关文章:

JavaScript 正在将字符串转换为字符串并导致错误

javascript - console.log - 写在位置栏中而不是控制台面板中

javascript - 让 For 循环成为一个函数

node.js - Jest Snapshot 在 updateSnapshot 上未正确格式化为漂亮的格式,例如。没有将对象或数组添加到快照中

javascript - THREE.STLLoader 不是构造函数

javascript - ES6中的静态导入是什么意思?

javascript - 显示不同的图像 react

javascript - 单击复选框时从 json 中删除第一个对象 - AngularJs + NodeJs

c++ - 以泛型函数为参数的遍历函数

javascript - 获取数组中列出的对象