一、判断题
- 1.在JavaScript中可以用十六进制形式表示浮点数常量。
- 2.空字符串(””)也是字符串常量。
- 3.使用单引号对(’ ‘)表示字符常量,而使用双引号对(” “)表示字符串常量。
- 4.在定义JavaScript变量时,一定要指出变量名和值。
- 5.用var定义一个变量后,如果没有赋予任何值,那么它的值是空值,即null.
- 6.JavaScript规定在使用任何变量之前必须先使用var声明它。
- 7.在使用var x=1声明变量x之后,赋值语句x=”今天天气真好”将出错。
- 8.表达式的类型只取决于运算符,与操作数无关。
- 9.两个整数进行除(/)运算,其结果也为整数。
- 10.如果有定义var a=true,b;那么a ll b的结果为true。
二、单选题
- 1.下列不属于“原始表达式”(primary expression)的是( )
A. “JavaScript is fun!”
B. true
C. /css/
D. []
D - 2.数组var sparseArray=[1,,,,5],包含几个元素( )
A. 2
B. 3
C. 4
D. 5
D - 3.下列不属于属性表达式的是( )
A. o.y.z
B. o[“x”]
C. o{“x”}
D. a[0].x
C - 4.下列不属于对象创建表达式的是( )
A. new Object()
B. new Array[]
C. new Array
D. new Date
B - 5.表达式 “1” + 2 的输出结果是( )
A. “12”
B. 12
C. “1”2
D. 3
A - 6.表达式 1+{} 的输出结果是( )
A. “1”
B. 1
C. 1NaN
D. “1[object Object]”
D - 7.表达式 123%7 的计算结果是
A. 2
B. 3
C. 4
D. 5
C - 8.表达式”123abe”-“123″的计算结果是_。
A. “abc”
B. 0
C. “123abc123”
D.NaN
D - 9.下面代码变量e的结果是( )
var a=10, b=20 , c=30;
++a;
a++;
e=++a+(++b)+(c++)+a++;
A. 75
B. 76
C. 77
D. 78
C - 10.位运算符表达式 0x1234 | 0x00FF 的结果是( )
A. 0x0034
B. 0x00FF
C. 0x12FF
D. 0x1234
C - 11.位运算符表达式 0xFF00 ^ 0xF0F0的结果是( )
A. 0xFF00
B. 0x0FF0
C. 0xF0F0
D. 0xFFF0
B - 12.位运算符表达式 7>>1的结果是( )
A. 14
B. 2
C. 3
D. 49
C - 13.比较运算符的作用是什么?
A.执行数学计算
B. 处理二进制位,目前还不重要
C.比较两个值或表达式,返回真或假
D. 只比较数字,不比较字符串
C - 14.字符串比较 “11”<“3” 和数字比较 “11”<3 的结果是( )
A. false false
B. true false
C. true true
D. false true
B - 15.定义一个数组var data = [7,8,9]; 表达式 “0” in data 的结果是( )
A. false
B. true
C. undefined
D. NaN
B - 16.定义一个数组var a = [1, 2, 3]; 表达式 a instanceof Object 的结果是( )
A. true
B. false
C. undefined
D. NaN
A - 17.下面的哪一个表达式将返回真?
A. (3===3) && (5<1)
B. !(17<=20)
C. (3!=3) || (7<2)
D. (1===1) || (3<2)
D - 18.下面的哪一个表达式将返回假?
A. !(3<=1)
B. (4>=4) && (5<=2)
C. (“a”==”a” ) && (“c”!=”d”)
D. (2<3) || (3<2)
B - 19.逻辑表达式 !(p && q) 等价于( )
A. !p && !q
B. !p || !q
C. ! p && q
D. p || !q
B - 20.逻辑表达式 !(p || q) 等价于( )
A. !p && !q
B. !p || !q
C. ! p && q
D. p || !q
A - 21.赋值运算符的作用是什么?
A. 给一个变量赋新值
B. 给一个变量赋予一个新名
C. 执行比较运算
D. 没有任何用处
A - 22.下面哪一个不是JavaScript运算符?
A. =
B. ==
C. &&
D. $#
D - 23.如果变量x的类型是任意数字或NaN,那么typeof x 返回的结果是( )
A. “undefined”
B. “null”
C. “Object”
D. “number”
D - 24.如果delete 使用的运算数是一个不存在的属性,它将返回( )
A. true
B. false
C. NaN
D. undefined
A - 25.关于逗号运算符表述正确的是( )
A. 首先计算右操作数
B. 最后返回右操作数的值
C. 逗号运算符在for循环中最常用
D. 逗号运算符的优先级不是最低的
B - 26.下列各种运算符中,哪个优先级最高( )
A. +
B. &&
C. ==
D. *=
A - 27.请选择结果为真的表达式()
A. null instanceof Object
B. null === undefined
C. null == undefined
D. NaN == NaN
C
二、综合题
- 1.解释下面的代码
(a == b) && stop(); - 2.解释下面的代码
var max = max_width || preferences.max_width || 500; - 3.解释下面的代码
var geval = eval;
var x = “global”, y = “global”;
function f(){
var x = “local”;
eval(“x += ‘changed’;”);
return x;
}
function g(){
var y = “local”;
geval(“y += ‘changed’;”);
return y;
}
console.log(f(),x);
console.log(g(),y); - 4.请说明JavaScript中“==”和“===”的区别。
三、编程题
- 1.随机生成两个小数给变量x.y,然后显示这两个数中的最大值。(提示:语句“var x=Math.random();”可为变量生成一个随机小数:另外,使用条件运算符‘’?:”)
- 2.如果某年的年份值是4的倍数并且不是100的倍数,或者该年份值是400的倍数,那么这一年就是闰年。请编制一个页面,该页面显示当天是否处于闰年。
提示:使用以下语句,可使变量year的值就是当天所属的年份值。
var today = new Date(); //获取当天日期
var year = today.getFullYear(); //获取当天年份 - 3.有一个字符串abcd-ef-ghi,请用JavaScript将它处理成ghi&ef&abcd。
转载请注明:陈童的博客 » JavaScript中的表达式和运算符练习题