前端 js 面试题

1.使用js在一个div中追加10个复选框,选中复选框的时候弹出选中个数。

追加一个复选框
var  checkBox=document.createElement( "input" );
checkBox.setAttribute( "type" , "checkbox" );
checkBox.setAttribute( "id" , '123456' );
弹出选中框的个数
var  inputs = document.getElementsByName( "cb[]" );
var  checked_counts = 0;
for ( var  i=0;i<inputs.length;i++){
   if (inputs[i].checked){
     checked_counts++;
   }
}
alert(checked_counts);


2.Http与Https 的区别?

Icon

HTTP-超文本传输协议 (HTTP-Hypertext transfer protocol) 是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。

HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。

4.JS对象节点的 插入、复制、删除。?

Icon

用到的方法和属性: 
1.获取某个节点的父节点 
parentNode属性 
2.获取某个节点的子节点集合 
childNodes属性 
3.创键一个新的节点 
createTextNode(节点文本内容) document对象的方法 在某些浏览器上兼容性不是很好 
createElement(对象) document对象的方法 例如:document.createElement("a"); 
4.给某个节点对象添加属性和属性值 
setAttribute(属性,属性值); 例如:aNode.setAttribute("href","http://www.baidu.com"); 
5.替换某个节点下的子节点 
replaceChild(新节点,原子节点); 
6.将某个节点添加到一个节点下 
appendChild(要添加的节点) 
7.克隆某个节点
cloneNode() 不传参数和传入true参数一样,表示克隆该节点包括子节点 

 5.css是如何继承的,

Icon

所谓继承,就是父元素的规则也会适用于子元素。比如给body设置为color:Red;那么他内部的元素如果没有其他的规则设置,也都会变成红色。继承得来的规则没有特殊性。

6.html如何进行隐藏与显示。

1
2
3
4
5
6
7
8
方法一:
document.getElementById( "EleId" ).style.visibility= "hidden" ;
document.getElementById( "EleId" ).style.visibility= "visible" ;
  利用上述方法实现隐藏后,页面的位置还被控件占用,显示空白。
方法二:
document.getElementById( "EleId" ).style.display= "none" ;
document.getElementById( "EleId" ).style.display= "inline" ;
  利用上述方法实现隐藏后,页面的位置不被占用。

7 给你一页面,要你写JS代码拿对象,得到它值,然后进行一些操作

  1  var div = document.getElementById( "myDiv" );
  2  var img = document.getElementById( "img1" );
  3  var a = document.getElementById( "myA" );
  4  //取得元素特性
  5  alert(div.id);            //"myDiv"
  6  alert(div.className);     //"bd",这里不是div.class,是因为class是保留关键字
  7  alert(div.title);         //"我是div"
  8  alert(a.href);            //http://www.baidu.com
  9  //设置元素特性
10  div.id =  "myDiv2" ;                   //id改为"myDiv2"
11  div.className =  "ft" ;                //class改为"ft",如果存在名为"ft"的样式,会立刻变为"ft"样式,浏览器会立刻反应出来
12  div.title =  "我是myDiv2" ;             //title改为"我是myDiv2"
13  div.align =  "center" ;                //设置居中对齐
14  img.src = "images/img1.gif" ;          //设置图片路径
15  a.innerHTML = "新浪" ;                  //"百度"改为"新浪"
16  a.href =  "<a href="http://www.sina.com.cn/" "="" style="color: rgb(59, 115, 175); text-decoration: none; border-top-left-radius: 0px !important; border-top-right-radius: 0px !important; border-bottom-right-radius: 0px !important; border-bottom-left-radius: 0px !important; border: 0px !important; bottom: auto !important; float: none !important; height: auto !important; left: auto !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; width: auto !important; box-sizing: content-box !important; min-height: inherit !important; background-image: none !important; background-position: initial initial !important; background-repeat: initial initial !important;">http://www.sina.com.cn" ;  //重新设置超链接
2 .通过getAttribute()、setAttribute()和removeAttribute() 方法,获取、设置、移除元素的特性(不推荐使用,前两个方法IE6, 7 中有异常,第三个方法IE6不支持,设置自定义特性时可以使用)
getAttribute() 方法,用来获取元素特性。接受一个参数,即要获得元素的特性名
setAttribute() 方法,用来设置元素特性。接受两个参数,即要获得元素的特性名和特性值
removeAttribute() 方法,用来移除元素的特性。接受一个参数,即要移除元素的特性名
  1  var div = document.getElementById( "myDiv" );
  2  var img = document.getElementById( "img1" );
  3  var a = document.getElementById( "myA" );
  4  //取得元素特性
  5  alert(div.getAttribute( "id" ));             //"myDiv"
  6  alert(div.getAttribute( "class" ));         //"bd",注意这里是class,而不是className,与上面不同
  7  alert(div.getAttribute( "title" ));         //"我是div"
  8  alert(a.getAttribute( "href" ));             //http://www.baidu.com
  9  //设置元素特性
10  div.setAttribute( "id" , "myDiv2" );                //id改为"myDiv2"
11  div.setAttribute( "class" , "ft" );                 //class改为"ft",这里同样是class,而不是className
12  div.setAttribute( "title" , "我是myDiv2" );         //title改为"我是myDiv2"
13  div.setAttribute( "align" , "center" );             //设置居中对齐
14  img.setAttribute( "src" , "images/img1.gif" );      //设置图片路径
15  //移除元素特性
16  div.removeAttribute( "class" );         //移除class特性
3 .通过attributes属性,获取、设置、移除元素的特性
 
1  var div = document.getElementById( "myDiv" );
2  //取得元素特性
3  alert(div.attributes[ "id" ].nodeValue);         //"myDiv"
4  //设置元素特性
5  div.attributes[ "id" ].nodeValue =  "myDiv2" ;     //id改为"myDiv2"
6  //移除元素特性
7  div.attributes.removeNamedItem( "class" );         //移除class特性


8 实现HTML全选,全取消

function  checkAll() { 
     //把所有参与选择的checkbox使用相同的name,这里为"num_iid" 
     var  eles = document.getElementsByName( "num_iid" ); 
     var  i = 0; 
     // 如果是全选状态,则取消所有的选择 
     if  (isSelectAll() ==  true ) { 
         for  ( i = 0; i < eles.length; i++) { 
             eles[i].checked =  false
        
         document.getElementById( "selectAll" ).checked =  false
     else 
         // 否则选中每一个checkbox 
         for  ( i = 0; i < eles.length; i++) { 
             eles[i].checked =  true
        
    
// 判断当前是否为全选状态 
function  isSelectAll() { 
     var  isSelected =  true
     var  eles = document.getElementsByName( "num_iid" ); 
     for  ( var  i = 0; i < eles.length; i++) { 
         if  (eles[i].checked !=  true ) { 
             isSelected =  false
        
    
     return  isSelected; 
// 选择任意一个非全选checkbox 
function  checkOne() { 
     if  (isSelectAll()) { 
         document.getElementById( "selectAll" ).checked =  true
     else 
         document.getElementById( "selectAll" ).checked =  false
    
}

9.用JavaScript显示当前时间,格式:年-月-日 时:分:秒

var  now=  new  Date();
var  year=now.getYear();
var  month=now.getMonth()+1;
var  day=now.getDate();
var  hour=now.getHours();
var  minute=now.getMinutes();
var  second=now.getSeconds();
     alert(year+ "-" +month+ "-" +day+ " " +hour+ ":" + ":" +minute+ ":" +second);

10.在JavaScript中用代码实现trim()函数的功能

//删除左右两端的空格
function  trim(str){
    return  str.replace(/(^\s*)|(\s*$)/g,  "" );
}
 
//删除左边的空格
function  ltrim(str){
    return  str.replace(/(^\s*)/g, "" );
}
 
//删除右边的空格
function  rtrim(str){
    return  str.replace(/(\s*$)/g, "" );
}


11.JS实现多线程

SetTiemout:在指定的毫秒数后调用指定的代码段;SetInternal:在指定的时间间隔内(ms)循环调用指定的代码段。通过这两个函数可以实现


做一个鼠标点击DIV动画,变大变小的那种,说一下思路。

window.onload=function(){ //加载DOM后执行
   function zoom(id,x,y){ //设置缩放函数参数,id,横向缩放倍数,纵向缩放倍数
   var obj=document.getElementById( "box" ); //获取元素对象值
   var dW=obj.clientWidth; //获取元素宽度
   var dH=obj.clientHeight; //获取元素高度
   obj.onmouseover=function(){ //鼠标指向该对象状态
   this .style.width=dW*x+ "px" ; //横向缩放
   this .style.height=dH*y+ "px" ; //纵向缩放
   this .style.backgroundColor= "#f00" ; //背景颜色变换
   this .style.zIndex= 1 ; //Z轴优先
  }
obj.onmouseout=function(){ //鼠标离开元素,设置默认值
   this .style.width= "" ;
   this .style.height= "" ;
   this .style.backgroundColor = "" ;
   this .style.zIndex= "" ;
    }
 
}
zoom( "box" , 1.5 , 1.5 ); //调用函数
}


用JS的正则表达式,写一个电话号码的校验 ,如:开始是134到138开头的,后面随便的8位数字 
页面的优化,如:用 PageSpend是怎样优化的 
js校验日期格式 
说一下JS的继承跟闭包 
Https协议 
写个js的判断邮箱的正则表达式 
http有几种状态,用代码说明。


"<javaScript>
alert(paseInt(""123abc""));
alert(Float(""abc123""));
</javaScript>

打印结果是什么?" 
如果ID是textFiled,我想在textFiled得到当前系统时间,用javaScript实现? 
javaScript 全局函数。 
js 系统时间刷新 jquery函数 
div跟span的区别? 
一个JS类,你怎样来增加一个方法? 
说如果我要写一个表格,不实用table,应该怎么来写 
JS跳转页面是如何跳转的。 
说说document对象,如何得到一个标签里面的值 
用js的正则表达式判断一个字符出现的次数。 
用js的正则表达式把一个字符进行改变? 
如何拿到一个下拉框中的值 要是没有id,name 你会怎么拿 
你是怎么用JS检查是纯数字的? 
写一个邮箱的正侧表达式 
怎样获取javaScript的json数据? 
JavaScript怎么处理异常的. 
在JavaScript中用代码实现Trim。 
在css文件中如何根据某个元素的id,name定义它的样式。 
编写一个JavaScript函数,显示当前时间,格式是年-月-日,时:分:秒。 
js里只允许一个onLoad(),在JQuery里怎么弄两个。 
JS的进度条怎么实现 
JS实现多线程 
html实现全选问题 
JS的onclick绑定两个方法 
Html有5个checkbox ,name是不一样的,如:chk1,chk2,chk3,chk4;js代码实现全选。 
动态的菜单,一级菜单、二级菜单和多级菜单,数据库表的实现 
代码怎样实现一个分页的公共代码 
在js里你是怎么用迭代的 
给你一个界面,界面里面有个小框框,小框框里面给ABC三个字,让你把ABC居中; 
js怎样使浏览器的后退按钮失效。 
Windo.onload和$(document).ready()的区别? 
javascript的触发事件; 
js里的作用域 
js里用var声明和不用var的区别 
js里的继承 
js里的闭包 
使用js在一个div中追加10个复选框,选中复选框的时候弹出选中个数。 
用html 写一个 表格 
js中跳转页面的标签,Js的内置对象,Js的全局函数 
用户在填写数据时,万一不小心点跳转别的页面,要如何判断他点了,给他一个提示?

.当在一个页面中有一个按钮,在你按这个按钮的时候,会出现另一个页面,这个页面的是怎么出现的?
jQuery怎么实现Ajax?
XML是怎么解析的?
在js中怎么写个报表(曲线图),在JQuery里面怎么实现
highcharts 
 div标签 span标签

Icon
DIV 和 SPAN 元素最大的特点是默认都没有对元素内的对象进行任何格式化渲染。主要用于应用样式表(共同点)。 
两者最明显的区别在于DIV是块元素,而SPAN是行内元素(也译作内嵌元素)。 
详解:1.所谓块元素,是以另起一行开始渲染的元素,行内元素则不需另起一行,

18.获取js标签,属性
19.页面提交一个数据,第一次点击提交无反应,第二次再提交,怎样避免这种现象
20.JQuery常用的特效和JQuery的插件
21.javascript是面向对象的,怎么体现javascript的继承关系?
22.javaScript的2种变量范围有什么不同?
23.javascript的常用对象有哪些?
其他
24.既然你知道了struts2的19个拦截器影响性能,如果要你 设置,你怎么设置?
25.一个页面有很多内容,有css,jquery,js等等,我要怎么样 来优化这个页面
26.我有一个很大的文件要下载,但如果中途有事离开,文件暂 停下载,下次如何判 断才能在上次已下载了一部分的文件在 继续接着下载,也就是断点续传
27.我有一个很大的文件,我要怎样才能把它导出成excel文件, 要求最高性能
28.Struts标签
29.Spring注解
30.XML解析
31.如何修改tomcat的内存大小和端口号
32.整个项目的框架怎么搭建?
33.一个字符串,里面有大写跟小写,怎么获取所有的大写字符?
34.项目流程要从哪方面开始讲?
35.怎么修改一个<input>里面class属性的值?
36.ibatis和mybatis的区别. mybatis有没有注解
37.tomcat版本问题。
38.tomcat和jboss容器的部署和性能调试。
39.spring里面的事务怎么用的。
41.ajax里面回调函数有几个参数,我说3个(url,get或者post 提交方式,判断同步或异步)他说我没回答到重点。返回值是
42.struts的底层实现是什么。
44.Map里面传一个person对象 没有key。怎么去给它拿出来删 掉。
46.ajax,jquery、json怎么与前台页面数据交互

猜你喜欢

转载自blog.csdn.net/xiyan_yuan/article/details/77989234