Js进阶-单元测试客观题

1.以下表达式返回结果是:"1"-null+true

A."23true"   B.1    C.0   D.2

正确答案:D


2.typeof([]) 的结果是

A."array"  B."Object"  C."Function"  D."object"

正确答案:D

typeof 一般只能返回如下几个结果:number,boolean,string,function,object,undefined。

对于 Array,Null 等特殊对象使用 typeof 一律返回 object,这正是 typeof 的局

限性。


3.以下表达式返回结果是false的有

A.true.constructor === Boolean

B.(1).constructor === Number

C.(function(){}).constructor === Object

D."jerry".constructor === String

正确答案:C

constructor生成这个对象的构造函数的构造函数本身,能够识别undefine,null除外的标准对象类型、内置对象类型与自定义对象类型


4.以下语句执行后,a的值不是undefined的是

A.var a = document.getElementById('notExistElement');

B.var a = (function(b){return b;})();

C.var a = (function(){alert("test")})();

D.var o = {x:1}

  var a = o.y;

正确答案:A, B结果为null


5.以下代码执行时两个alert分别输出值是

(function(){

      a = 5;

     alert(window.a);

     var a = 10;

      alert(a);

      })();

A.undefined, 5      B.5, 5      C.10, 10      D.undefined, 10

正确答案:D


6.以下代码执行时alert输出值是

var x=10;

function foo(){

alert(x);

}

function bar(){

var x=20;

foo();

}

bar();

A.undefined    B.10    C.NaN    D.null

正确答案:B


7以下代码中的alert,分别输出什么结果

var a = 1;

var func = (function(){

var a = 2;

return function() {

a++;

alert(a);

}

})();

func();

func();

A.2, 3    B.1, 2    C.NaN, NaN    D.3, 4

正确答案:D


8eval函数中的this值是

A.null  B.调用上下文中的this  C.undefined  D.Function

正确答案:B


9下列关于js描述正确的有

A.在对象构造器中,可以使用this创建对象的属性

B.js中不能使用面向对象

C.函数的apply和call方法可以指定函数执行中的this

D.js中不能给未定义的变量赋值

正确答案:A、C


10Js函数运行在它们被定义的作用域里

A.×  B.√

正确答案:B

11使用new Function()创建的函数代码中的this是全局对象

A.×   B.√

正确答案:B

12Js中所有函数都可以当成构造器

A.×  B.√

正确答案:A

13catch语句可以临时改变js变量作用域

A.√   B.×

正确答案:A

14Js使用动态作用域

A.×    B.√

正确答案:A

15Js有块级作用域

A.×    B.√

正确答案:A

16以下代码用于判断user对象就有自身属性name,请补全代码:

user.(“name”);

正确答案:hasOwnProperty

17 var obj = Object.create({a:1});

obj.hasOwnProperty('a')返回结果是___

正确答案:false

你可能感兴趣的:(Js进阶-单元测试客观题)