刷题错误类型:
1.JavaScript中document.getElementById()的返回值的类型为?object
问题描述:
var value1 = document.getElementById(“num1”).value; //3或9
var value2 = document.getElementById(“num2”).value; //4或10
if(value1 < value2 ){
alert("正确")
}else{
alert("失败)
}
当value1 = 3,value2 = 4的时候,弹出:正确;
当value1 = 9,value2 = 10的时候,弹出:失败;
原因:
JS是弱类型语言,变量的类型不是固定的,可以随时根据环境变化,JS运行时会自动根据当前的一些情况进行隐式转换。string类型是无法比较的。
value1 和value2得到的都是string类型的数据,string类型比较的时候系统比对的是unicode编码的值,出现什么结果都是有可能的。所以js中有比较,最好先进行转换。
可以通过以下方式,判断js中数据的类型,在前端的控制台(console)中可以看到。
console.log(typeof value1);
console.log(typeof value2);
2.a.push(1, 2);a.shift(3, 4);a.concat([5, 6]);a.splice(0, 1, 2);
3.[typeof null, null instanceof Object]的结果是什么
4.事件传播的三个阶段是什么
正确答案: D 你的答案: C (错误)
目标 -> 捕获 -> 冒泡
冒泡 -> 目标 -> 捕获
目标 -> 冒泡 -> 捕获
捕获 -> 目标 -> 冒泡
5.以下js操作Array的方法中不能添加元素的是:
正确答案: B 你的答案: D (错误)
push
pop
unshift
splice
6.表达式 ”2”+3+4 的值为
正确答案: C 你的答案: B (错误)
"27"
9
"234"
"9"