今日头条笔试
简答题:
是做一个计算器,按钮忘记写border了,因为不能调试所以CSS写的比较差,题目要求写圆角和渐变加分。
js操作方面没有什么问题,字符串操作那边有点卡。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css" media="screen"> .box{ width: 200px; background-color: grey; } input{ text-align: right; display: inline-block; width: 90%; height: 20px; margin:10px ; } ul li{ list-style: none; display: inline-block; width: 30px; height: 20px; border:1px solid black; text-align: center; line-height: 20px; } #clear{ float: right; margin: 10px; height: 20px; border:1px solid black;/* 这个忘记写了 */ text-align: center; line-height: 20px; } #keynum{ clear: both; } #button{ width: 30px; height: 20px; border:1px solid black; text-align: center; line-height: 20px; margin: 0 auto; } </style> </head> <body> <div class="box"> <input id="result" type="text"> <div id="clear">清屏</div> <ul id="keynum"> <li>7</li> <li>8</li> <li>9</li> <li>*</li> <li>4</li> <li>5</li> <li>6</li> <li>-</li> <li>1</li> <li>2</li> <li>3</li> <li>+</li> <li>0</li> <li>(</li> <li>)</li> <li>/</li> </ul> <div id="button">=</div> </div> <script type="text/javascript"> window.onload=function(){ var btn=document.getElementById("button"); var result=document.getElementById("result"); var clear=document.getElementById("clear"); var keynum=document.getElementById("keynum"); result.value=""; keynum.onclick=function(e){ var e=e ||window.event; var target=e.target ||e.srcElement; if (target.nodeName==="LI") { var newstr=target.innerHTML; var showstr=result.value; result.value=showstr.concat(newstr); } }; btn.onclick=function(){ var expression=result.value; result.value=eval(expression); } clear.onclick=function(){ result.value=""; } } </script> </body> </html>
编程题三道,第一道只能过70%,可见自己编程能力是有多差。
var line; var m,n; var result=[]; var arr=[]; while(line = read_line()){ line=parseInt(line.trim()); arr.push(line); } m=arr[0]; var marr=arr.slice(1,m+1); n=arr[m+1]; var narr=arr.slice(m+2); function FilterData(a,b) { //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中 var result = new Array(); var c=b.toString(); for(var i=0;i<a.length;i++) { if(c.indexOf(a[i].toString())>-1) { for(var j=0;j<b.length;j++) { if(a[i]==b[j]) { result.push(a[i]); break; } } } } return result; } print(FilterData(narr,marr).join(' '));
第二道