1、 JS如何得到HTTP的请求头信息和返回的头信息?
Javascript中跟response header有关的就两个方法:
getResponseHeader 从响应信息中获取指定的http头 语法
strValue =
esponseHeader(bstrHeader);
getAllResponseHeaders 获取响应的所有http头 语法
strValue =
llResponseHeaders();
需要注意的是,通常,在IE下不能完整的获取header报头数据,只能取到如下header数据:
X-Powered-By:
X-UA-Compatible:
Keep-Alive:
Transfer-Encoding:
Content-Type:
比如你要获取时间戳,在IE下必须做些特殊处理,需要在后端设置一下,关闭缓存:
2、 将10进制的数302转为二进制。
十进制转二进制的原理是:
用2辗转相除至结果为1
将余数和最后的1从下向上倒序写 就是结果
例如302
302/2 = 151 余0
151/2 = 75 余1
75/2 = 37 余1
37/2 = 18 余1
18/2 = 9 余0
9/2 = 4 余1
4/2 = 2 余0
2/2 = 1 余0
故二进制为100101110
所以程序可以写成这样:
var a=302;
var str=””;
while(a>1){
str = a%2 + str;
a = parseInt(a/2);
}
str = a+str;
3、 js中运算符的优先级(此非原题,为原理题)
运算符 | 描述 |
. [] () | 字段访问、数组下标、函数调用以及表达式分组 |
++ — – ~ ! delete new typeof void | 一元运算符、返回数据类型、对象创建、未定义值 |
* / % | 乘法、除法、取模 |
+ – + | 加法、减法、字符串连接 |
<< >> >>> | 移位 |
< <= > >= instanceof | 小于、小于等于、大于、大于等于、instanceof |
== != === !== | 等于、不等于、严格相等、非严格相等 |
& | 按位与 |
^ | 按位异或 |
| | 按位或 |
&& | 逻辑与 |
|| | 逻辑或 |
?: | 条件 |
= oP= | 赋值、运算赋值 |
, | 多重求值 |
4、 typeof(null)=______
答案为object
5、 JS中给全部都是数字元素的数组排序的原生方法是___sort_______,其中使用的是__冒泡__排序方法。
例如:(function(a,b){return a-b;})
详细说明访问网站:
6、 NaN * 6=__NaN____
7、 JS中调用某个函数之前,如何取得该函数最多可以传递多少个参数?该函数被调用时,如果知道传了多少个参数过来?
假设函数名为fun,那个th就是它最多能接受的参数个数;
在fun函数里面,arguments就是用数组装着调用时传过来的所有参数,因此th就是已经传递过来的参数个数;
如:
function needTwoPara(p1,p2){
var a=arguments;
var result=’我是个需要’+th+’个参数的函数n’
+’您输入的'参数的个数为:’+th+’n’
for(var i=0, len = th; i < len; i++){
result=result+’第’+(i+1)+’个参数为:’+a[i]+’n’
}
result+=’以上是用arguments来获得参数n’;
result+=’下面用变量来获得参数:n’;
result+=’p1:’+p1+’n’;
result+=’p2:’+p2+’n’;
alert(result);
}
alert(th);
needTwoPara(‘ooooo’);
运行结果为:
2
我是个需要2个参数的函数
您输入的参数的个数为:1
第1个参数为:ooooo
以上是用arguments来获得参数
下面用变量来获得参数:
p1:ooooo
p2:undefined
8、 软件HttpWatch的作用?