对象动态key赋值问题

问题如下:
image.png
主要目的是修改 input 的值,但是现在只有 key 这样的变量,如何修改data 中深层嵌套的 input 的值呢?

回复
阅读 1.5k
2 个回答
key.split('.').reduce((prev, cur) => prev[cur], data);

也可以使用如 lodash:
_.get
_.set

对于提取,我的思路是,先把key切割,然后逐层获取:

let data = {
      form: {
        input: 1,
      },
    };
    let key = "form.input";
    let arr = key.split(".");
    this.data1 = data;
    arr.map((v) => {
      this.data1 = this.data1[v];
    });
    console.log(this.data1); // 1

至于赋值,我不知道在什么情况下赋值,没有什么想法!~~

推荐问题
宣传栏