1. 前端面试题:怎么把一个类数组对象转化为数组
var students = [];
students[students.length] = new Object();
students[students.length] .name = "Lanny";
students[students.length] .age = "25";
students[students.length] .location = "China";
var json = JSON.stringify(students);
var student = new Object();
student.name = "Lanny";
student.age = "25";
student.location = "China";
students = (students || []).push(student);
var json = JSON.stringify(students);
2. js 闭包逻辑面试题
主要问题在于,自执行函数没有形参i,如果加一个形参i,输出的就是0-4了。如回这样
for(vari=0;i<5;i++){
(function(i){
答setTimeout(function(){
console.log(i)
},i*1000)
})(i)
}
这就是作用域的问题,for循环每执行一遍,都会生成一个异步函数setTimeout,由于这个时候是同步的,自执行函数里边的i,读取的就是每次for循环的i,所以每次执行相差1秒。然后js是单线程的,setTimeout需要等for执行完之后执行。这时候,for循环执行完使得i的值变为5,而自执行函数没有形参,setTimeout回调函数读的变量是自执行函数外的变量i,所以输出为5。也就是每隔一秒输出一个5。
你可以试着把5变成更大的数,也是一样的,输出的就是这个数。
3. js面试题,ajax请求时,如何解释json数据
客户端HTML代码:
<table>
<thead>
<tr>
<td>学号</td>
<td>姓名</td>
<td>班级</td>
<td>性别</td>
<td>电话</td>
</tr>
</thead>
<tbody></tbody>
<input id="btnget" type="button" value="加载数据" />
javascript代码:
$(function(){
$("#btnget").click(function(){
$.Ajax({
type:"post",
dataType:"Json",
url:"data.ashx",
success:function(msg){
var str="";
for(i in msg){
str+="<tr><td>"+msg[i].id+
"</td><td>"+msg[i].name+
"</td><td>"+msg[i].cla+
"</td><td>"+msg[i].sex+
"</td><td>"+msg[i].tel+
"</td></tr>";
}
$("tbody").append(str);
}
});
});
});
样式部分:
<style type="text/css">
table{
boeder-collapse:collapse;
}
table td{
text-align:center;
border:1px solid gray;
padding:3px 10px;
}
</style>
服务器端返回的json数据代码:
string data=[{\"id\":\"2010324268\",\"name\":\"林宇\",\"cla\":\"10软件\",\"sex\":\"男\",\"tel\":\"***********\"},{\"id\":\"2010324269\",\"name\":\"李四\",\"cla\":\"10网络\",\"sex\":\"男\",\"tel\":\"***********\"},{\"id\":\"2010324270\",\"name\":\"肖玲\",\"cla\":\"10网络\",\"sex\":\"女\",\"tel\":\"***********\"}];
context.Response.Write(data);
4. 一到js优化面试题
functionUser(id,name){
varid=id,name=name;
this.getName=function(){
returnname;
}
}
varb=newUser('1','钱');
varc=b.name,d=b.getName();
alert('c:'+c+'d:'+d);
输出c:undefined d:钱
我不太明白这里优化的意思,但是我来做这道题的话就会这么做,主要是用OOP的思版想把id和name作为私有变权量,然后声明公共方法获取私有变量值
答案无绝对,献丑啦
5. javascript面试题级答案
这个可以到网上找来一下呀!
=========================================
1、谈自谈javascript数组排序方法sort()的使用,重点介绍sort()参数的使用及其内部机制
2、简述DIV元素和SPAN元素的区 别。
3、结合text这段结构,谈谈innerHTML outerHTML innerText之间的区别。
4、说几条XHTML规范 的内容(至少3条)
5、对Web标准化(或网站重构)知道哪些相关的知识,简述几条你知道的Web标准?
答案:
1、 sort的实现的功能类似JAVA的比较器,数据排序从多维数组的第一维开始排序,可以自己定义排序方法,很不多的函数
2、DIV有回 车,SPAN没有
3、 innerHTML对象里面的HTML
outerHTML包括对象和里面的HTML
innerText对象里面的文本
4、属性加引号,不能有不匹配的标签,加定义
5、W3C标准等
6. 前端面试题,js怎么判断数组类型
typeof
这也是面试官问我的一个问题
1
我的第一反应是typeof。但是正中对方下怀。
> typeof []
'object'
1
2
这样返回的是object
7. 如何查找数组中第二大元素 面试题
如何查找数组中第二大元素 面试题
'Office 2007版本是用Set 命令插入图片,如下:
'*****************
' Dim imgIcon
'With Range("B3")
' Set imgIcon = ActiveSheet.Shapes.AddPicture(FileName:=Ppath & Trim(Me.P1Text) & ".jpg")
' End With
' With Range("B16")
' Set imgIcon = ActiveSheet.Shapes.AddPicture(FileName:=Ppath & Trim(Me.P2Text) & ".jpg")
' End With
'Set imgIcon = Nothing
'*****************
For Each pic In oBook.Worksheets(1).Shapes
pic.Height = 138
If pic.Width > 220 Then
pic.Width = 220
End If
Next pic
8. 问一道js面试题的答案答,此for循环中的for (var i = 0, l = str.length; i < l; i++)是什么意思
这是一种提高效率的写法,相当于
for(var i=0;i<str.length;i++)
这样的写可以在循环中不用每次都计算str.length
9. JS/JQuery面试题
服务器环境下的css,js文件更改后调用需要清一下缓存,不然浏览器用的还是之前的文件