数字马力前端笔试编程题

文章目录

    • 数字马力前端笔试编程题
    • 编程题1
    • 编程题2
    • 谈谈感受

题型分配 —100min

编程题1

将一串字符串驼峰化,第一个‘-’后的字母无需转小写为大写,其他‘-’后的字母需转小写为大写
例1:font-size转化为fontSize
例2:-weront-size转化为werontSize

function ss(str) {
  if (str[0] == "-") str = str.slice(1);// 加上这个可以保证第二个案例通过,否则会将空字符当作为第一个单词
  let res = str.split("-");
  var fist = res[0];
  if (fist[0] == "-") fist = fist.slice(1);
  let result = fist;
  for (let i = 1; i < res.length; i++) {
    let temp = res[i][0].toUpperCase();
    let temp2 = res[i].replace(res[i][0], temp);
    result += temp2;
  }
  return result;
}
console.log(ss("font-size"));
console.log(ss("-weront-size"));

编程题2

一串字符串,当字符[a-zA-Z]重复,输出true,否则输出false。
例1:dssfsfsf–>true
例2:21333ghksd–>false

function ss(str) {
  str = str.match(/[a-zA-Z]/g); //[ 'h', 't', 'h' ]
  console.log(str);
  for (let i = 0; i < str.length - 1; i++) {
    if (str[i] == str[i + 1]) return true;
  }
  return false;
}
console.log(ss("hth000"));
function ss(str) {
  return /([a-zA-Z])\1/g.test(str);
}
console.log(ss("hth000"));

谈谈感受

编程题的舒适度拉满,不需要输入输出,不需要搞复杂算法,纯纯的考前端,只需要写function的内容。真的是我做过最nice笔试题了,期待面试

发表回复