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