web前端校招笔试题集锦
- // Should equal 15
- sum(1, 2, 3, 4, 5);
- // Should equal 0
- sum(5, null, -5);
- // Should equal 10
- sum('1.0', false, 1, true, 1, 'A', 1, 'B', 1, 'C', 1, 'D', 1,
- 'E', 1, 'F', 1, 'G', 1);
- // Should equal 0.3, not 0.30000000000000004
- sum(0.1, 0.2);
- function sum() {
- var nResult = 0;
- for (var i = 0, l = arguments.length; i < l; i++) {
- nResult += window.parseFloat(arguments[i]) || 0;
- }
- return nResult.toFixed(3) * 1000 / 1000;
- }
请写一个表格以及对应的CSS,使表格奇数行为白色背景,偶数行为灰色背景,鼠标移上去时为黄色背景。
- <table class="table">
- <tr><td>第一行</td></tr>
- <tr><td>第二行</td></tr>
- <tr><td>第三行</td></tr>
- <tr><td>第四行</td></tr>
- </table>
- <style>
- .table tr:nth-child(2n-1){
- background-color:white;
- }
- .table tr:nth-child(2n){
- background-color:grey;
- }
- .table tr:hover{
- background-color:yellow;
- }
- </style>
写一个traverse函数,输出所有页面宽度和高度大于50像素的节点。
- function traverse(oNode) {
- var aResult = [];
- oNode = oNode || document.body;
- if (oNode.style) {
- var nWidth = window.parseInt(oNode.style.width, 10) || 0;
- var nHeight = window.parseInt(oNode.style.height, 10) || 0;
- if (nWidth > 50 && nHeight > 50) {
- aResult.push(oNode);
- }
- }
- var aChildNodes = oNode.childNodes;
- if (aChildNodes.length > 0) {
- for (var i = 0, l = aChildNodes.length; i < l; i++) {
- var oTmp = aChildNodes[i];
- aResult = aResult.concat(traverse(oTmp));
- }
- }
- return aResult;
- }
左图右文如何实现
- <div class="item">
- <div class="pic">...</div>
- <div class="content">...</div>
- </div>
- css实现:
- .item .pic { float:left;margin-right:10px; }
- .item .content { overflow:hidden;zoom:1; } /* 或用display:table-cell */
输入一个文件名,输出它相应的后缀 如输入 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>
输出效果:
一开始没有考虑到反转的问题,由于pop()是从后往前删除的,所以如果不进行反转,输出的文件格式是倒置过来的。而且我一开始就是用abc.txt来测试,输出结果尽管是错的但是也都是”txt“。
这道题目考察了比较多js对象的方法:
例如String对象的split()方法,是用于将字符串分割成字符串数组的;
Array对象的pop()方法,是用于删除并返回数组的最后一个元素的;
Array对象的push()方法,是向数组的末尾添加一个或多个元素,并返回新的长度的;
Array对象的join()方法,是把数组的所有元素放入一个字符串,然后元素通过指定的分隔符进行分隔;
Array对象的reverse()方法,用于颠倒数组中元素的顺序。
同时还考察了一些js操作dom的最基本的语法,例如getElementsByTagName什么的。
请给Array本地对象增加一个原型方法,它用于删除数组条目中重复的条目(可能有多个),返回值是一个包含被删除的重复条目的新数组。
- Array.prototype.distinct = function() {
- var ret = [];
- for (var i = 0; i < this.length; i++)
- {
- for (var j = i+1; j < this.length;) {
- if (this[i] === this[j]) {
- ret.push(this.splice(j, 1)[0]);
- } else {
- j++;
- }
- }
- }
- return ret;
- }
- //for test
- alert(['a','b','c','d','b','a','e'].distinct());
JS异步加载
- function loadScript(url,callback){
- var script=document.creatElement("script");
- script.type="text/javascript";
- if(script.readyState){
- script.onreadystatechange=function(){
if(script.readyState=="loaded" || script.readyState=="complete"){- script.onreadystatechange=null;
- callback();
- }
- }
- }else{
- script.onload=function(){
- callback();
- }
- }
- script.src=url;
- document.getElementsByName("head")[0].appendChild(script);
- }
web前端校招笔试题集锦的更多相关文章
- Web前端面试笔试题总结
最近一段时间要毕业了,忙着找工作,见过不少笔试面试题,自己总结了一些加上网上找的一些整合了一下.答案暂时都东拼西凑出来了,但是还是先不发出来,一方面是答案并不是唯一的并且自己的答案不能保证对,另一方面 ...
- 2018 CVTE 前端校招笔试题整理
昨天晚上(7.20)做了CVTE的前端笔试,总共三十道题,28道多选题,2道编程题 .做完了之后觉得自己基础还是不够扎实,故在此整理出答案,让自己能从中得到收获,同时给日后的同学一些参考. 首先说一下 ...
- 2016最新Java笔试题集锦
更新时间:2015-08-13 来源:网络 投诉删除 [看准网(Kanzhun.com)]笔试题目频道小编搜集的范文“2016最新Java笔试题集锦”,供大家阅读参考, ...
- Java笔试题集锦
Java笔试题集锦 1.MVC的各个部分都有那些技术来实现?怎样实现? 答:MVC是Model-View-Controller的简写."Model" 代表的是应用的业务逻辑(通过J ...
- 剑指Offer——美团内推+校招笔试题+知识点总结
剑指Offer--美团内推+校招笔试题+知识点总结 前言 美团9.9内推笔试.9.11校招笔试,反正就是各种虐,笔试内容如下: 知识点:图的遍历(DFS.BFS).进程间通信.二叉查找树节点的删除及中 ...
- 剑指Offer——腾讯+360+搜狗校招笔试题+知识点总结
剑指Offer--腾讯+360+搜狗校招笔试题+知识点总结 9.11晚7:00,腾讯笔试.选择题与编程.设计题单独计时. 栈是不是顺序存储的线性结构啊? 首先弄明白两个概念:存储结构和逻辑结构. 数据 ...
- 剑指Offer——京东校招笔试题+知识点总结
剑指Offer--京东校招笔试题+知识点总结 笔试感言 经过一系列的笔试,发觉自己的基础知识还是比较薄弱的,尤其是数据结构和网络,还有操作系统.工作量还是很大的.做到精确制导的好方法就是在网上刷题,包 ...
- 剑指Offer——CVTE校招笔试题+知识点总结(Java岗)
剑指Offer(Java岗)--CVTE校招笔试题+知识点总结 2016.9.3 19:00参加CVTE笔试,笔试内容如下: 需要掌握的知识:Linux基本命令.网络协议.数据库.数据结构. 选择题 ...
- Web前端JQuery面试题(三)
Web前端JQuery面试题(三) 1.怎么阻止冒泡过程? stopPropagation(); // 阻止冒泡过程 2.ready()方法和onload()方法的区别? onload()方法要等页面 ...
随机推荐
- D10 基本数据类型(各种职业的技能分析) 主要为 int 和 str
在python中具有魔法的 职业 类型 召唤每种职业 在pychar 中 打出该职业的名称 按住Ctrl 光标在该职业名称上 点击就能看该职业的技能 1 数字 int a = " ...
- 深入分析Java反射(八)-优化反射调用性能
Java反射的API在JavaSE1.7的时候已经基本完善,但是本文编写的时候使用的是Oracle JDK11,因为JDK11对于sun包下的源码也上传了,可以直接通过IDE查看对应的源码和进行Deb ...
- 练习-HTML表单
<html lang="en"> <head> <h1>大学生爱好调查</h1> <meta charset="ut ...
- 基于Token的身份验证
最近了解下基于 Token 的身份验证,跟大伙分享下.很多大型网站也都在用,比如 Facebook,Twitter,Google+,Github 等等,比起传统的身份验证方法,Token 扩展性更强, ...
- PAT A1133 Splitting A Linked List (25) [链表]
题目 Given a singly linked list, you are supposed to rearrange its elements so that all the negative v ...
- 箭头函数,闭包函数中的this指向
在javscript中,this 是在函数运行时自动生成的一个内部指针,它指向函数的调用者. 箭头函数有些不同,它的this是继承而来, 默认指向在定义它时所处的对象(宿主对象),而不是执行时的对象. ...
- Linux应用编程之lseek详解
Linux应用编程之lseek详解 1.lseek函数介绍 (1).文件指针:当我们要对一个文件进行读写时,一定要先打开这个文件,所以我们读写的所有文件都是动态文件.动态文件在内存中的形态就是文件流的 ...
- matlab设置mex失败
更新 使用matlab2017b时,又报错, >> mex -setup 警告: Xcode is installed, but its license has not been acce ...
- js时间与日期
var box = new Date(); //创建了一个日期对象:构造方法里面可以传参数,指定时间.如果没有传,就是默认当前时间alert(box); alert(Date.parse('4/12/ ...
- Linux常见指令x-mind