通过值获取 JavaScript 对象中的键并重命名

零比零

我有一个变量列表,我将把它们组成一个带有键和值的数组。但是,在将它们作为数组之前,我想检查它们的值是否与特定字符串匹配,并将它们的键名称更改为其他名称。

让我们说这是变量列表

customer1 = "Jack", customerDate1 = "08/13/2021", customer2 = "Michael", customerDate2 = "01/01/2021", customer3 = "Luna",customerDate3 = "03/10/2021";

运行条件检查之前的数组将是

data = [{key1:"Jack", keyDate1:"08/13/2021",key2:"Michael", keyDate2:"01/01/2021",key3:"Luna", keyDate3:"10" }];

假设条件是:

customerName = "杰克";

我希望使用以下变量 (customer1,customer2,customer3) 交叉检查 customerName 变量,如果条件满足其中任何一个,则它们在数组中的键会更改:

例如,条件满足 customer1 然后 customer1 和 customerDate1 的键都更改为其他内容,变成类似

data = [{conditionMet1:"Jack", conditionDateMet1:"08/13/2021",key2:"Michael", keyDate2:"01/01/2021",key3:"Luna", keyDate3:"10" }];

我很感激任何帮助或指导。

乔瓦尼·埃斯波西托

像 alghoritm 一样有点棘手,但它有效:

let data = [{key1:"Jhon", keyDate1:"08/13/2021",key2:"Eric", keyDate2:"01/01/2021",key3:"Jack", keyDate3:"10" }];

let i = 1;
let result = [];
let explored = [];
data.forEach(x => {
   let resultObj = {};
   for (const [key, val] of Object.entries(x)) {
      let newKey = key;
      let newKeyDate = null;
      if (val === "Jack") {
          newKey = "conditionMet" + i;
          newKeyDate = "conditionDateMet" + i;
      }
      if (!explored.includes(key)) resultObj[newKey] = val;
      if (newKeyDate) {
         resultObj[newKeyDate] = x["keyDate" + i];
         explored.push("keyDate" + i)
      }
      if(!key.includes("Date")) i++;
   }
   result.push(resultObj)
})
console.log(result)

基本上,对于data我探索的每个元素,entries如果我找到了条件,我将添加conditionMet1添加conditionDateMet1到对象,否则我在对象本身上找到的内容。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何通过其值获取JavaScript Map中的键?

重命名JavaScript中的File()对象

如何通过其值获取JavaScript对象中的键?

如何从键和值中获取javascript对象的路径

使用javascript重命名数组中的对象键

如何通过字符串键获取嵌套JavaScript对象属性的值

获取Javascript中具有最高值的对象键

Firebase-通过键或Chid值获取数据-JavaScript

如何通过JavaScript“ Map”的值获取键?

如何通过使用Javascript在Json中获取图像值

在python中的字典中查找重复值并重命名

如何从Javascript中的对象列表中获取键的值?

通过Excel中的宏从URL下载并重命名文件

使用转换对象重命名JavaScript中的对象键

如何通过键从JavaScript字典数组中获取对象?

在字典中合并值并重命名键

在Javascript中通过键本身编辑对象值

如何通过使用javascript获取PHP对象值进行验证?

重命名javascript数组中的键

在Google Chrome插件中通过xpath获取元素值(javascript)

通过Awesomium C#中的javascript获取元素的值

Javascript数组通过键获取最大值

通过JavaScript变量获取对象值

Javascript 从对象中获取键和值

Javascript:通过相同的键/值合并/重命名数组中的相似对象

如何通过其值Javascript从对象数组中获取键

Javascript如何重命名保持值和位置的对象键

如何通过javascript中的值找到嵌套对象的键?

在javascript中通过未知的键名获取对象值