【问题标题】:Delete object property using template strings使用模板字符串删除对象属性
【发布时间】:2020-08-02 07:50:56
【问题描述】:

我试图通过以下方式使用模板字符串删除对象属性,但没有成功:

  1. 删除对象[${property}];
  2. 删除对象.${property};

你能帮帮我吗?

提前谢谢你。

【问题讨论】:

  • 添加您的对象数据和您想要的预期结果。
  • 你应该可以只使用 object[property] - 如果它不工作,那么还有其他问题
  • 您应该提供minimal reproducible example。使用问题编辑器的实时演示功能。

标签: javascript object properties


【解决方案1】:

为什么要使用模板文字,而可以简单地使用?

delete object[property]

同时:

delete object[`${property}`]

是前面示例代码的不必要的额外代码。

如果你想删除某个组合名称的属性,那么你可以像这样使用它:

delete object[`custom${property}`]

例如:

const object = {
  foo: 'my foo property',
  customfoo: 'my custom foo property'
}
const prop = 'foo'
delete object['foo'] // deletes object.foo
delete object[prop] // deletes object.foo
delete object[foo] // foo is undefined, throws an error
delete object[`custom${prop}`] // deletes object.customfoo

【讨论】:

    【解决方案2】:

    有一个示例,因为我们不知道您在这里使用模板文字的用例:

    let obj = {
        price : 10,
      name : 'random',
      qty : 15
    }
    
    const delName  = 'name';
    
    delete obj[`${delName}`];
    console.log(obj);

    【讨论】:

      【解决方案3】:

      这是使用模板字符串从对象中删除属性的方法

      删除对象[`${"property"}`]

      【讨论】:

        猜你喜欢
        • 2016-01-16
        • 2023-01-27
        • 2022-01-03
        • 2017-05-08
        • 2019-11-17
        • 2021-05-23
        • 1970-01-01
        • 2017-03-12
        • 1970-01-01
        相关资源
        最近更新 更多