将对象中的所有属性名改为驼峰式, 有点类似简化版的深拷贝 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

相关推荐

今天投了小鹏,收到了AI面,大概会问哪些啊?
期末一定及格:总共4个部分,心理测评、行测、然后就是问岗位、对岗位的理解、过往遇到了哪些难点怎么解决,很简单,没有什么特别专业的问题,都是一些综合素质相关的
小鹏汽车AI面6人在聊
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
06-26 14:50
人力小鱼姐:有后面墨迹那两句的时间问题早回答完了
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务