1、documen.write和 innerHTML的区别
答案:
document.write只能重绘整个页面
innerHTML可以重绘页面的一部分
2、浏览器检测通过什么?
答案:
(1) navigator.userAgent
(2) 不同浏览器的特性,如addEventListener
3、JavaScript有哪几种数据类型?
答案:
简单,Number,Boolean,String,Null,Undefined
复合,Object,Array,Function
4、截取字符串“abcdefghi”的“fghi”
答案:
var myvalue=”abcdefghi”;
var jiequ=myvalue.substring(myvalue.length-4,myvalue.length);
alert(jiequ);
5、写出下面的运算结果
答案:
alert(typeof(null)); // object
alert(typeof(undefined)); // undefined
alert(typeof(NaN)); // number
alert(NaN==undefined); // false
alert(NaN==NaN); // false
var str=”123abc”;
alert(typeof(str++)); // number
alert(str);// NaN
6、问执行完毕后 x, y, z 的值分别是多少?
var x = 1, y = z = 0;
function add(n) {
n = n+1;
}
y = add(x);
function add(n) {
n = n + 3;
}
z = add(x);
答案:1、undefined、undefined
7、push()、pop()、shift()、unshift()分别是什么功能?
答案:
/*push 方法
将新元素添加到一个数组中,并返回数组的新长度值。*/
var a=[1,2,3,4];
a.push(5);
/*pop 方法
移除数组中的最后一个元素并返回该元素。*/
var a=[1,2,3,4];
a.pop();
/*shift 方法
移除数组中的第一个元素并返回该元素。*/
var a=[1,2];
alert(a.shift());
/*unshift 方法
将指定的元素插入数组开始位置并返回该数组。*/
8、如何阻止事件的冒泡?
答案:
//阻止冒泡的方法
function stopPP(e)
{
var evt = e|| window.event;
//IE用cancelBubble=true来阻止而FF下需要用stopPropagation方法
evt.stopPropagation ?evt.stopPropagation() : (evt.cancelBubble=true);
}
9、写出程序运行的结果?
for(var i=0, j=0; i<10, j<6; i++, j++){
k = i + j;
}
答案:10
10、编写一个方法 求一个字符串的字节长度
答案:
/*假设:
一个英文字符占用一个字节,一个中文字符占用两个字节*/
function getBytes(str){
var len = str.length,
bytes = len,
i = 0;
for(; i