将对象中的所有属性名改为驼峰式, 有点类似简化版的深拷贝 console.log(objectKeyToCamel(person)); function toCamel(str) { return str.replace(/\_(\w)/g, function (match, p1) { return p1.toUpperCase(); }); } function objectKeyToCamel(object) { const ObjectTag = '[object Object]'; const ArrayTag = '[object Array]'; const typeTag = getTypeTag(object); let newObject = void 0; let isArray = false; if (typeTag === ObjectTag) { // 不破坏原型 newObject = initCloneObject(object); } else if (typeTag === ArrayTag) { isArray = true; newObject = []; } else { return object; } if (isArray) { object.forEach((value, index) => { newObject[index] = objectKeyToCamel(value); }) } else { let keys = Object.keys(object); for (let key of keys) { let newKey = toCamel(key); newObject[newKey] = objectKeyToCamel(object[key]); } } return newObject; }
点赞 1

相关推荐

2025-12-17 13:34
复旦大学 算法工程师
回家当保安:复旦✌🏻,佬你的简历感觉挺好的,寒假日常hc比较少。佬可以过完年之后再试试,日常实习hc比较充足
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务