我的 javascript 对象如下所示:
const someObj = {
arr1: ["str1", "str2"],
arr2: ["str3", "str4"]
}
在尝试重命名密钥时(例如arr1
),我最终删除现有的密钥并用原始值写入一个新密钥。这的顺序obj
changes.
someObj = {
arr2: ["str3", "str4"],
renamedarr1: ["str1", "str2"]
}
如何在重命名密钥时保留密钥顺序?
最终它以 js-vanilla 方式而不是 React 方式解决。
如果有人寻找类似的解决方案,我将发布我最终使用的代码。灵感来自Luke's https://stackoverflow.com/users/576725/luke idea:
const renameObjKey = ({oldObj, oldKey, newKey}) => {
const keys = Object.keys(oldObj);
const newObj = keys.reduce((acc, val)=>{
if(val === oldKey){
acc[newKey] = oldObj[oldKey];
}
else {
acc[val] = oldObj[val];
}
return acc;
}, {});
return newObj;
};
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)