B站 前端 一面凉经

1、自我介绍
2、项目相关
3、编程题
var person = {
first_name:"Mather",
last_name:"Gates",
_age:62,
eye_color:"blue",
children: [
{
first_name:"XUPENGFEI",
last_name:"feifei",
_age:25,
children: [
{
first_name:"XIAOFEIFEI",
last_name:"xiaofeifei",
_age:2,
}
]
}
]
};


function toCamel(str) {
return str.replace(/\_(\w)/g, function (all, letter) {
return letter.toUpperCase();
})
}

function copy(obj) {
if (typeof obj !== 'object') return 0;

let newObj = {};
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
newObj[toCamel(key)] = typeof obj[key] === 'object' ? copy(obj[key]) : obj[key];
}
}
return newObj;
}

console.log(copy(person));

将对象中的所有属性名改为驼峰式

4、Vue生命周期
#B站面经##春招##面经#
全部评论
楼主投的哪里呀,上海吗
点赞 回复 分享
发布于 2022-04-03 11:31
就这四个问题吗?感觉也不难啊。
点赞 回复 分享
发布于 2022-04-03 14:34
将对象中的所有属性名改为驼峰式, 有点类似简化版的深拷贝 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]&(14698)#39;;   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; }
点赞 回复 分享
发布于 2022-04-04 15:09
项目问的底层吗
点赞 回复 分享
发布于 2022-07-14 16:01

相关推荐

10-24 16:47
华南理工大学
点赞 评论 收藏
分享
1 12 评论
分享
牛客网
牛客企业服务