首页 > 代码库 > 前端笔试题总结---持续更新

前端笔试题总结---持续更新

写在前面:。。。。

1字符串逆序

function reverse(str){    return str.split("").reverse().join("");//直接用函数        var str1="";//从后向前输出    for(var i=str.length-1;i>=0;i--){        str1+=str[i];    }    return str1;            var len=str.length;//字符串原地逆序    for(var i=0;i<len;i++){      str[i]=str[len-1-i];    }    return str;}

2弹出对话框提示当前选中的是第几个单选框

<input type="radio" name="radioGroup" onclick="foo()"/><input type="radio" name="radioGroup" onclick="foo()"/><input type="radio" name="radioGroup" onclick="foo()"/><input type="radio" name="radioGroup" onclick="foo()"/><input type="radio" name="radioGroup" onclick="foo()"/>
function foo(){    var reg=document.getElementsByName("radioGroup");    //获取一组有相同名称的单选框dom对象    for(var i=0;i<reg.length;i++){        if(reg[i].checked){            alert("第"+(i+1)+"单选框");        }    }}

3求y和z 的值是多少?

 var x = 1;  var y = 0;  var z = 0;  function add(n){n=n+1;}  y = add(x);  //alert(y); function add(n){n=n+3;}  z = add(x); //alert(z);
//题目分析,此题的陷阱在于函数都没有返回值。所以赋值后都是undefined。若给函数都加上return,其结果都将变成4,这是因为后面同名称的函数会覆盖前面一个。

 4如何获取表单<select>(下拉列表)域的选择部分的文本和value值?

  <select  size="1" onchange="sel(this)">     <option value="a">1</option>    <option value="b">2</option>    <option value="c">3</option>  </select>
function sel(obj){    var obj=document.getElementsByTagName("select");    //select下是一个options数组,拥有change事件的还有text和textarea     alert("文本为:"+obj.options[obj.selectedIndex].text);    alert("值为:"+obj.options[obj.selectedIndex].value);    }

5javascript怎样选中一个checkbox,怎样设置它无效和不能选择?

function check(){    var obj=document.getElementsByName("cb1");    for(var i=0;i<obj.length;i++){        obj[i].checked="true";//某一个选中        obj[i].disabled="true";//选择失效    }

6全选(或者全不选)的所有指定名称的checkbox 

function option(state,name){    var obj=document.getElementsByName("name");    for(var i=0;i<obj.length;i++){        obj[i].checked=state;    }}

7全选(或者全不选)的所有的checkbox 

function selectAll(state){    var obj=document.getElementsByTagName("input"){//获取所有的input标签对象        for(var i=0;i<obj.length;i++){            if(obj[i].type="checkbox"){//过滤出我们需要的checkbox类型                obj[i].checked=state;            }        }    }}

8全选指定值(可能有多个值,以逗号分隔)的checkbox 

function select(value,name){    var obj=document.getElementsByName("name"){        var values=value.split(",")//把字符串转化为数组        for(var i=0;i<values.length;i++){            for(var j=0;j<obj.length;j++){                if(obj[j].value=http://www.mamicode.com/=values[i]){//对每一个指定的值做判断                    obj[j].checked=true;                }            }        }    }}

 9补充按钮事件的函数,确认用户是否退出当前页面,确认之后关闭窗口;

function confirm(){    if(confirm("确认退出?")){        window.close();    }}

10 写出简单描述html标签(不带属性的开始标签和结束标签)的正则表达式,并将以下字符串中的html标签去除掉

   var str = "<div>这里是div<p>里面的段落</p></div>";

function replaceReg(str){    var reg = /<\/?\w+\/?>/gi;//这里\/是转义/防止与正则表达式的结束符冲突,后面的问号是可选(起始标签和结束标签),后面的可选是匹配单标签<br/>等。这是个全局匹配,标签部分大小写      alert(str.replace(reg,""));//字符串替换函数}

11将文档中className有“test”的td标签背景色设为黄色

var obj=document.getElementsByTagName("td");    for(var i=0;i<obj.length;i++){        if(obj[i].className.indexOf("test")!=-1){            obj[i].style.backgroundColor="yellow";        }    }    

12用javascript实现控制一个文本框的输入字数限制,超出字数限制文本框边框飘红显示

var oInput=document.getElementById("a");oInput.onkeyup=function(){    this.style.border=this.value.length>5?"1px solid red":"";}

13让文本输入框的宽度随着里面的内容多少自动伸缩自适应

var oInput = document.getElementById("autoInput"); var sSize = oInput.getAttribute("size"); oInput.onkeydown = function(){     var sInputValue =http://www.mamicode.com/ oInput.value;     if(sInputValue =http://www.mamicode.com/=="" || sInputValue.length <= sSize || sInputValue.length > 60){ return; }    else{ oInput.setAttribute("size",sInputValue.length); } }