如何用 JavaScript 提供的值替换多个对象键的名称?
以下方法介绍了如何将多个对象键的名称替换为用户使用 JavaScript 提供的值。
问题陈述:给定一个对象,其中包含不同的键值对,其中键表示属性,值本身称为属性值,您需要将一个或多个键的原始名称更改为用户提供的名称JavaScript。
最初以上述对象为例。该对象包含键值对,例如 Name: “Hello” 等。因此,让我们假设我们的目标是 Name 键,然后我们将通过以下方法将此 Name 键更改为 FirstName 键名称。
在直接跳入解决上述问题的方法之前,让我们首先声明我们将用于解决查询的对象。
示例:通过使用以下语法,让我们首先创建一个对象:
Javascript
Javascript
Javascript
Javascript
输出:
{ name: 'Hello', age: 20, gender: 'Male' }
现在让我们看看解决上述问题的方法。
方法一:
- 这是本机方法,也是一种非常简单的方法。
- 在这种方法中,我们将直接拾取对象键,并将该拾取键的名称更改为用户提供的名称。
- 提供密钥名称后,我们将删除先前声明的名称并用新名称替换它。
- 我们将在方法(或函数)中编写逻辑部分,并进一步调用该方法来执行我们的结果。
示例 1:
Javascript
输出:
{ age: 20, gender: 'Male', FirstName: 'Hello' }
现在假设您要使用自己提供的名称来定位对象中的年龄键。
示例 2:
Javascript
现在与 name 键一起,age 键也被用户提供的新名称替换。
输出:
{ gender: 'Male', FirstName: 'Hello', currentAge: 20 }
注意:您在这里唯一能注意到的是对象的位置发生了变化,但它的值仍然保持不变。
方法二:
- 在这种方法中,我们将声明一个完全负责执行结果的方法。
- 在此方法的参数中,我们将传入两个参数,第一个是 keysMap 对象,我们将从用户那里接受它,它实际上包含将要替换之前的键名的新键名,第二个是对象我们指的是。
- 现在在该方法中,我们将使用 Object.keys() ,它最初将接受我们的对象并以我们所有的对象键为目标,然后我们将对其执行 reduce() 它将接受两件事:首先是累加器值,它将充当我们的结果变量和第二个是我们目前定位的关键。
- 然后我们将编写我们的逻辑部分,为此我们将首先考虑扩展运算符,它将我们的对象传播到一个数组中,然后我们将渲染出对象键并用自己传递的键名替换它。
- 然后稍后我们将在一个新变量中传递我们的方法,我们将其声明为我们的结果变量,然后将 console.log() 我们的结果。
例子:
Javascript
输出:
{ FirstName: 'Hello', age: 20, gender: 'Male' }
注意:这种方法将保留键的位置以及值。