zoukankan      html  css  js  c++  java
  • 去哪儿网前端实习笔试题(一)

    三月上旬就在去哪儿的实习招聘投了简历,当时官方说3月20日18:30之前会发出笔试通知,我很多投开发的同学都收到了短信或者邮件,我的一直迟迟没来,还以为自己挂在简历了呢,郁闷了一天,到了20日下午的5:30终于收到了笔试通知,时间是两天之后,就在我们学校。

    我投的是前端实习,所以也就只做了前端的题,我觉得题目是很基础的.试卷上说前端有3道题,可我翻遍了整个试卷也就看到两道前端,希望我不是一个人……

    第一道大致是这样的:输入一个文件名,输出它相应的后缀 如输入 abc.txt 输出 txt。

    我的思路大致是这样的,首先肯定是获取到这个文件名的字符串,然后就是将每个字符拆开存入数组中,接着通过判断“.”的位置,获取到“.”字符之后的字符串,然后将其输出即可。

                           <script type="application/javascript">
    			            function getText(){
    			 	        //获取input的值
    				 	var testName = document.getElementsByTagName("input")[0].value;
    				 	//<p>节点
    				 	var pNode = document.getElementsByTagName("p")[0];
    	              
    					var newArray = new Array();
    					
    					//拆分之后的字符串存入到arryStr中
    					var arryStr = testName.split("");
    					//循环判断
    					for(var i=0;i<arryStr.length;i++){
    						//当判断第i个字符串不等于"."的时候,就将数组中最后一个字符pop()出来,push()到newArray数组中
    						if(arryStr[i]!="."){
    							newArray.push(arryStr.pop());
    						}
    					}
    					//将newArray中的每个字符都连接连接成一个字符串,并且反转,复制给p节点的文本
    					pNode.textContent = newArray.reverse().join(""); 
    				 }
    		                </script>
     
                              <body>
    	   	              文件名:<input type="text" value=""/><br>
    	                      文件格式:<p> </p><br>
    	                      <button id="btn" onclick="getText()">点击</button>
    	                  </body>
    输出效果:
    image 
    
    

    一开始没有考虑到反转的问题,由于pop()是从后往前删除的,所以如果不进行反转,输出的文件格式是倒置过来的。而且我一开始就是用abc.txt来测试,输出结果尽管是错的但是也都是”txt“。

    这道题目考察了比较多js对象的方法:

    例如String对象的split()方法,是用于将字符串分割成字符串数组的;

    Array对象的pop()方法,是用于删除并返回数组的最后一个元素的;

    Array对象的push()方法,是向数组的末尾添加一个或多个元素,并返回新的长度的;

    Array对象的join()方法,是把数组的所有元素放入一个字符串,然后元素通过指定的分隔符进行分隔;

    Array对象的reverse()方法,用于颠倒数组中元素的顺序。

    同时还考察了一些js操作dom的最基本的语法,例如getElementsByTagName什么的。

     

    希望和大家探讨更加简单快捷的方法~~

  • 相关阅读:
    too many open files linux服务器 golang java
    fasthttp 文档手册
    syncer.go
    grpc.go
    stm.go
    session.go
    mutex.go
    [HTML5]label标签使用以及建议
    禁止使用finalize方法
    [支付宝]手机网站支付快速接入
  • 原文地址:https://www.cnblogs.com/magicgua/p/4378305.html
Copyright © 2011-2022 走看看