题目
1、null,undefined,”string",20,true和false的共同点是( )
A、都是对象
B、都有相同的实例属性
C、都是原始值
D、都是函数
2、下列哪个正确的引入了myScript.js( )
A、
3、下列哪个符号不是逻辑运算符( )
A、%
B、||
C、 &&
D、 !
4、以下()为JavaScript声明变量的语句。
A、dim x;
B、int x;
C、var x;
D、x;
5、如下代码输出的结果是( )
console.log(1+ “2”+“2”);
console.log(1+ +“2”+“2”);
console.log(“A”- “B”+“2”);
console.log(“A”- “B”+2);
A、 122122NaNNaN
B、12232NaNNaN2
C、12232NaN2NaN
D、12232NaN2NaN2
6、执行下面语句后c的值是( )
var a=2,b=1,c=3;
if(a<b)
if(b<0)
c=0;
else
c++;
A、1 B、2 C、3 D、4
7、哪个操作符根据值和类型来比较变量( )
A、 ==
B、 ===
C、 =
D、这些都不是
8、var a = false;var x = a ? “A”:“B”;x的值是( )
A、A
B、B
C、TRUE
D、FALSE
9、程序段如下:
var x = new Boolean(false);
if (x) {
alert(‘hi’);
}
var y = Boolean(0);
if (y) {
alert(‘hello’);
}
最后的显示结果是( )
A、 hi
B、 hi hello
C、hello
D、 不显示
10、哪个关键字用来定义条件语句的可选分支( )
A、or
B、else
C、altenative
D、next
11、下列选项中哪一个等价于( )
if (a) {
x = b;}
else {
x = c;}
A、x = a ? b , c;
B、 x = a : b ? c;
C、 x = a ? b : c;
D、 x = a ? b ; c;
12、执行以下程序段后,x的值是( )
var x=0;
switch(++x) {
case 0: ++x;
case 1: ++x;
case 2: ++x;
}
A、1 B、2 C、3 D、4
13、var x = typeof new String(“abc”);x的值是( )
A、“string” B、undefined C、“object” D、“number”
14、Number(null);此代码将返回( )
A、Null B、1 C、undefined D、0
15、解读下面的js代码,计算的结果是( )
var num=10;
if( 5num/2 && (2+2*num).toString()”22”){
document.write(true)
}
A、TRUE B、FALSE C、5 D、22
16、下面哪个变量类型在javascript 中不存在( )
A、object B、boolean C、integer D、number
17、以下不属于Javascript原始类型的是( )
A、string B、number C、function D、boolean
18、下面语句var x= -10, y; x=2*x; y=x+15;计算后y的结果是( )。
A、-15 B、10 C、-5 D、5
19、document.write(a+2);var a = 10;a=a+2.页面上显示的值是( )
A、10.0
B、12.0
C、NaN
D、undefined
20、分析下面的JavaScript代码,经过运算后m的值为( )
x=11;
y=“number”;
m=x+y;
A、number
B、11.0
C、11number
D、程序报错
21、结束本次循环,进入下一次循环的关键字是( )
A、continue
B、break
C、return
D、end
22、以下程序运行结束正确的是( )
var a = 3;
var b = 4;
var c = 5;
console.log(a>b?a:c);
A、3 B、4 C、5 D、b
23、运行下面运行程序
function print() {
var x = 1;
if(x == ‘1’)
console.log(‘One’);
if(x === ‘1’)
console.log(‘Two’);
}
print();
最后返回的结果是( )
A、one B、1 C、two D、2
24、下列JavaScript的循环语句中,正确的是( )
A、if(i<10;i++)
B、for(i=0; i<10)
C、for i=1 to 10
D、for( i=0; i<=10;i++)
25、下列不是分支语句使用的关键字是( )
A、case
B、if
C、else
D、for
26、while语法的正确使用是( )
A、 while i=(1 <> 10)
B、 while (i<=10)
C、while (i<=10;i++)
D、 while i=1 to 10
27、function f(y) {
var x=y*y;
return x;
}
for(x=0;x< 5;x++) {
y=f(x);
document.writeln(y);
}
输出的结果是()
A、0 1 2 3 4
B、 0 1 4 9 16
C、 0 1 9 4 16
D、 以上答案都不对
28、在循环结构中能强制退出循环的关键字是( )
A、continue
B、break
C、return
D、end
29、下面代码的输出结果是( )
bar(); function bar() { console.log(‘bar’);}
A、TypeError
B、bar
C、undefined
D、SyntaxErrror
30、JavaScript中,函数是( )
A、 循环
B、 操作符
C、 对象
D、总是全局的
答案及解析
//1 c
//2 c
//3 a
//4 c
//5 c
// console.log(1+ +"2"+"2"); //++ -隐性转义
// console.log('2' - 0)
// console.log('2')
// console.log("A"- "B"+"2"); //NaN2
// console.log(NaN - NaN) //NaN不存在的number
// console.log("A"- "B" + 2); //NaN
// console.log(NaN + 10) //NaN 和任何number计算 都是NaN
// console.log(undefined + 2)//NaN undeined->NaN
//6 c
// var a=2,b=1,c=3;
// if(a<b)
// if(b<0)
// c=0;
// else
// c++;
// if(a<b){ //注意:if else 是一个表达式
// if(b<0)
// c=0;
// else
// c++;
// }
// console.log(c)
//7 b
//8 b
//9 a
// var x = new Boolean(false);//返回的boolean对象
// if (x) { //自动转boolean
// alert('hi');
// }
// var y = Boolean(0); //0 转boolean值 false
// if (y) {
// alert('hello');
// }
//总结:Boolean 转换 0 null '' undefined NaN false =>false
//10 b
//11 c
//12 c
// var x=0;
// switch(++x) { //x =1
// case 0: ++x;
// case 1: ++x; //x = 2
// case 2: ++x; //x =3
// }
//注意:switch case 必须跟break 否则会穿透
//13 c
// var x = typeof new String("abc") //'object'
// console.log(x)
// console.log(typeof new String()) //不能检测object
// console.log(typeof new Object())
// console.log(typeof new Array())
// console.log(typeof new Boolean())
// console.log(typeof new Set())
// console.log(Object.prototype.toString.call(new String())) //不能检测object
// console.log(Object.prototype.toString.call(new Object()))
// console.log(Object.prototype.toString.call(new Array()))
// console.log(Object.prototype.toString.call(new Boolean()))
// console.log(Object.prototype.toString.call(new Set()))
//14 d
// console.log(Number(new Object()))//null '' false new String() -> 0
//undefined 非空字符串 NaN new Object() -> NaN
//15 a
// var num=10;
// if( 5==num/2 && (2+2*num).toString()=='22'){
// document.write(true)
// }
// //16 c
// //17 c
// //18 c
// var x= -10, y; //y = undefined
// x=2*x; //x = -20
// y=x+15;//y = -5
//19 c
// document.write(a+2);//undefined + 2 = NaN
// var a = 10;
// a=a+2.
//20 c
// x=11;
// y='number';
// m=x+y;
// console.log(m)
//21 a
//22 c
//23 a
// function print() {
// var x = 1;
// if(x == '1') //true
// console.log('One');
// if(x === '1') //false
// console.log('Two');
// }
// print();
//24 d
//25 d
//26 b
// var i = 0
// while (NaN>=10){ //注意:undefined -> NaN NaN和任何数字比较 都是false
// i++
// console.log(i)
// }
//27 b
// function f(y) {
// var x=y*y;
// return x;
// }
// for(x=0;x< 5;x++) {//0 1 2 3 4
// y=f(x);//0 1 4 9 16
// document.writeln(y);
// }
//28 b
//29 b
// bar();
// function bar() {
// console.log('bar');
// }
//30 d
// function fn1(){
// function fn2(){
// }
// }
// windows.fn1()()
//总结:函数是全局的