今天面了一家甲方小公司,机试在showmebug上做题,一共四道题,个人感觉这种形式比起背八股文更加考验了个人的技术,和微软的面试差不多,但是跟它起来难度不大,如果慢慢做肯定都能做出来,只是这showmebug的体验是真的差啊…
难度: 中等
全是编程题,其实有些我也不太懂,欢迎各位指点
蛇形命名法转驼峰命名法,然后在后面加上单词数量,如果不能转换则返回False
比如:
hello_world => helloWorld2
hello_ => False
这题比较简单,考察了js基础
const input = readline()
const result = []
const input_arr = input.split('_')
let flag = false
for(let i=0;i<input_arr.length;i++){
if(input_arr[i] === ""){
flag = true
break
}
if(i === 0){
result.push(input_arr[i])
}
else{
const newStr = input_arr.slice(0,1).toUpperCase() + input_arr.slice(1)
result.push(newStr)
}
}
if(flag){
console.log("False")
}
else{
console.log(result.join("") + input_arr.length)
}
用html和css写出这个图片上的布局,考察设计能力,颜色无所谓主要在于比例正确
这题不难,个人以为这个布局主要用到了弹性盒模型,即display:flex, 最后调整一下元素细节即可
实现百度的搜索下拉框,比如输入一些查询,会自动弹出8-10个反馈性关键词,可以通过mock一个数组来模拟ajax请求的返回内容
例如这个:
这题把代码写上去了但运行不起来,当时不知道showmebug这个网站怎么给html写js,其实思路很简单:
- html部分,用一个< input>标签记录搜索内容,用一个< ol>显示处理好的数据
- 给< input>标签绑定按键抬起事件,每次按键抬起,根据input框里的内容发送ajax请求
- 将服务器返回的json字符串处理成关键词数据,生成li标签放入ol中
- 处理一些js细节
- 处理一些样式方面细节
这题考验你的学习能力,可以网上查资料, 难度会大一点,每答对没关系,能做多少是多少,请边学边用three.js在scene(等同于3D用的Canvas)里的随机位置画3个小球。然后在scene上面叠一个canvas,在2D的平面上把3个球用先连成一个三角形。每次刷新,球的位置和三角形应该都是不一样的
这题没做出来,毕竟比较复杂,内容比较多要花费很长时间,加上showmebug这网站太难用了,不好写网页。以后有时间更新