第十二章:JavaScript测试题1

更新于:1509692229

1、
JS与PHP相同之处

 A、都是脚本语言
 B、都支持面向对象
 C、代码注释方式一样
 D、都是运行在服务器端

2、
下面哪些字符串作为JS变量名不会报错

 A、$aaa
 B、__b
 C、default
 D、23c

3、
给一个JS变量赋值,哪一个不会报错

 A、var a = TRUE;
 B、var a = nan;
 C、var a = undefined;
 D、var a = Nan;

4、
JS数据类型转换说法正确的是

 A、"0"在JS中转成布尔值是false。
 B、"bbdd"转成数值是0。
 C、undefined转换数值结果是NaN,null转换数值结果是0。
 D、undefined和null转成布尔值假false。

5、
JS数据类型比较说法正确的是

 A、"3000" > "10000"结果返回真true
 B、
在PHP中,如果一边有数字(整数型、浮点型),另一边转为数字比较。JS也符合这项规则,另一边如果是
纯数字字符串会转成数字,不是纯数字字符串会变成数字0。
 C、
数值与布尔值相等比较,布尔值false会转成数值0,true会转成数值1。这点和PHP不一样,在PHP中是数
值转成布尔值。
 D、JS中字符串与布尔值相等比较,它们都是转成数值后再做相等比较。

6、
有关JS数组描述正确的是

 A、数组是JS的基本数据类型
 B、JS数组是引用传值,与PHP的拷贝传值不一样
 C、var arr =  array(1,2,3,4);JS这样创建数组是错误的
 D、JS数组可以用for...in语句遍历数组

7、
对JS函数和变量描述正确的是:

 A、JS函数也是对象,函数名可以作为另一函数的返回值
 B、匿名函数自调用(function(){})();JS支持这种写法
 C、函数内定义局部变量,一定要使用var命令
 D、在PHP中,定义函数是不能重名的!在JS中,重名不报错

8、
function f1(){ var max = 17; return function f2(num){ if(num > max) document.write(num); else document.write(max); } } max = 16; var ff = f1(); ff(15); 最终输出结果是几

 A、15
 B、16
 C、17
 D、程序报错

9、
function Person(){ this.name = "周更生"; this.sex = "男"; this.age = 30; this.isMarried = true; this.salary = 3000; this.bonus = 300; } Person.name的值是不是“周更生”

 A、是
 B、不是

10、
JS原型继承说法正确的是

 A、对象 和 单一成员同时继承,需要先继承对象、再继承成员
 B、多个对象 同时继承,最后对象起作用
 C、继承对象的成员 与 本身成员名称一致,体现本身成员结果
 D、一个对象继承另一对象,是“(这个)对象.prototype = 对象;”而不是“(对象的)构造函数.prototype = 对象;”