JavaScript中的表达式和运算符练习题

JavaScript everyinch 5737℃ 0评论

一、判断题

  • 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中的表达式和运算符练习题

喜欢 (7)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
'; } if( dopt('d_footcode_b') ) echo dopt('d_footcode'); ?>