gpt4 book ai didi

JavaScript:将对象属性中的每个单词缩短为固定长度?

转载 作者:行者123 更新时间:2023-11-30 09:12:14 25 4
gpt4 key购买 nike

有没有像这样的对象:

 {
"computer_general_last_contact_time_epoch": 1566522907515,
"computer_general_last_contact_time_utc": "2019-08-23T01:15:07.515+0000",
"computer_general_initial_entry_date": "2018-08-18",
}

并使每个属性名称更短,以便将对象键的每个单词更好的_字符缩短为固定的字符长度。因此,例如,缩短为 3 个字符的固定长度会产生:

{
"com_gen_las_con_tim_epo": 1566522907515,
"com_gen_las_con_tim_utc": "2019-08-23T01:15:07.515+0000",
"com_gen_ini_ent_dat": "2018-08-18",
}

我必须创建一个新对象吗?遍历当前对象中的每个对象,使用正则表达式删除所有“_”,然后缩短每个单词,然后将它们全部添加到中间?我对此非常迷茫,因为我有 100 个属性的对象,我需要缩短这些属性以进行集成,任何建议都会有所帮助!

最佳答案

一个简单的解决方案是迭代输入对象的每个键,并对每个键执行以下操作以计算要将值传输到的新键:

  1. 用“_”分割键,从键中获取单词
  2. 将每个单词缩减为 3 个字母
  3. 将裁剪后的词与“_”拼接得到新的key

在代码中这可以表示为:

let obj =  {
"computer_general_last_contact_time_epoch": 1566522907515,
"computer_general_last_contact_time_utc": "2019-08-23T01:15:07.515+0000",
"computer_general_initial_entry_date": "2018-08-18",
};

const newObj = {};

/* Iterate keys in obj */
for(let key in obj){

/* Create new key, split key by _ to extract words, trim each word to three
letters, join trimmed words by _ again to obtain new key */
const newKey = key.split("_").map(word => word.substr(0, 3)).join("_");

/* Apply key value from obj to new obj with new key */
newObj[newKey] = obj[key];
}

console.log(newObj);

关于JavaScript:将对象属性中的每个单词缩短为固定长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57718088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com