今天下午抽空出去参加了一场面试,来到xxx集团所在楼层后,我径直走向了前台,告知自己是来参加前端面试的.殊不知这个前台碉堡了,问我是谁叫我来面试的,妹的,难道是我自己跑来的么@__@.这家公司逼格比较高,是个国企,老大说他们这边福利多么好,还有高温假什么的,我去,这儿的空调比我们公司还冷,还需要高温假么....
两位技术面试官问了我比较多的问题,有个哥们应该是前端的,长得圆圆的,跟我讨论了比较多的angularjs,还有echarts等图表类插件(这家公司可能这块用的较多);
另外一个应该是后台的,没问多少问题,就让我手写了一个方法,讲诸如1234567890这种的数字转换成科学计数法:,1,234,567,890(从后往前,每隔三个数字中间插入一个逗号);
当时我没听清楚,以为是从前往后计算,于是写了一通.晚上回来,心里实在不爽,问题虽然简单,但还是将代码贴在下面,请不要见笑:
<input type="text" id="calculateValue"><br> <button id="calButton">科学计数</button> <script> $(function () { $('#calButton').click(function () { if($('#calculateValue').val()){ var originalNUm=$('#calculateValue').val(); var n=0; var arr=[]; var totalTime=Math.ceil(originalNUm.length/3); for(var i=originalNUm.length-1;i>=0;i--){ n++; if(n%3==0){ addTime++; if(addTime<totalTime){ arr.push(','+originalNUm.slice(originalNUm.length-n,originalNUm.length-n+3)); } } } var finalStr=''; for(var j=arr.length-1;j>=0;j--){ finalStr+=arr[j]; } $('#calculateValue').val(originalNUm.slice(0,originalNUm.length%3).toString()+finalStr.toString()) } }) }) </script>
后来又问了我一个问题:说是怎么判断用户是从手机端访问的网页还是从pc端访问的
我说可以通过navigator的platform属性或者useragent来判断.他又问如果用户更改了这个属性咋办呢,我懵逼了,(⊙o⊙)…,尼玛这种顽皮的用户应该还是少数....
待俺明天跟大家交流一下,再来解答这个问题