WEB面试题大全
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.求y和z的值是多少?
var x=1;
var y=0;
var z=0;
function add(n){n=n+1;}
y=add(x);
function add(n){n=n+3;}
z=add(x);
都为undefined,因为没有返回值。
2.javascript怎样选中一个checkbox,怎样设置它无效?document.all.cb1[0].disabled=true;
3.form中的input可以设置为readonly和disable,请问2者有什么区别?
readonly不可编辑,但可以选择和复制;值可以传递到后台disabled不能编辑,不能复制,不能选择;值不可以传递到后台4.js中的3种弹出式消息提醒(警告窗口,确认窗口,信息输入窗口)的命令式什么?
alert
confirm
prompt
5.javaScript的2种变量范围有什么不同?
全局变量:当前页面内有效
局部变量:方法内有效
6.程序中捕获异常的方法?
window.error
try{}catch(){}finally{}
7.写出程序运行的结果?
for(i=0,j=0;i<10,j<6;i++,j++){
k=i+j;
}
结果:10
8.获取今天的日期
var d=new Date();
//获取年,getFullYear()返回4位的数字
var year=d.getFullYear();
//获取月,月份比较特殊,0是1月,11是12月
var month=d.getMonth()+1;
//月份变成两位
month=month<10?'0'+month:month;
//获取日
var day=d.getDate();
day=day<10?'0'+day:day;
var dateToday=year+'-'+month+'-'+day; console.log(datetToday);
9.已知有字符串foo=”get-element-by-id”,写一个function 将其转化成驼峰表示法”getElementById”。
var test="get-element-by-id";
function combo(msg){
var arr=msg.split("-");//split方法将字符串以“-”切割为数组["get","element","by",id]
for(var i=1;i arr[i]=arr[i].charAt(0).toUpperCase()+arr[i].substr(1,arr[i].len gth-1); } msg=arr.join(""); return msg; } 10.JavaScript的数据类型都有什么? 基本数据类型:String,boolean,Number,Undefined,Null 引用数据类型:Object(Array,Date,RegExp,Function) 11.前端页面有哪三层构成,分别是什么?作用是什么? 结构层Html表示层CSS行为层JS 12.标签上title与alt属性的区别是什么? Alt当图片不显示是用文字代表。 Title为该属性提供信息 13.编写一个数组去重的方法 Array.prototype.unique1=function(){ var n=[]; for(var i=0;i if(n.indexOf(this[i])==-1){ n.push(this[i]); } } return n; } 14.添加删除替换插入到某个接点的方法 obj.appendChidl() obj.removeChild obj.replaceChild obj.innersetBefore 15.数组方法pop()push()unshift()shift() Push()尾部添加pop()尾部删除 Unshift()头部添加shift()头部删除 16.link和@import的区别是? link属于XHTML标签,而@import是CSS提供的; 页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载; import只在IE5以上才能识别,而link是XHTML标签,无兼容问题; link方式的样式的权重高于@import的权重. 17.列出display的值,说明他们的作用。 block象块类型元素一样显示。 none缺省值。象行内元素类型一样显示。 inline-block象行内元素一样显示,但其内容象块类型元素一样显示。 list-item象块类型元素一样显示,并添加样式列表标记。 18.alert(0||2),alert(1&&2) 1、只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。 2、只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。 1、只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值; 2、只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值; 19.闭包解决三个标签绑定onclick的需求 var liList=document.querySelectorAll("li"); for(var i=0;i liList[i].onclick=outer(i);} function outer(x){ function inner(){ console.log(x);} return inner;} 20.从数组中获得一个随机项 var items=[12,548,"a","foo",777,{a:10,b:"user"}]; var randomItem= items[Math.floor(Math.random()*items.length)];