在知乎上看到的有人发布的和javascript有关的试题,和大家分享下,虽然是N久前的事了,但这些题相当经典,不免让人觉得javascript真是门蛋疼的语言。
1.
(function () { return typeof arguments; })();A. "object" B. "array" C. "arguments" D. "undefined"
答案:A
2.
var f = function g() { return 23; }; typeof g();A. "number" B. "undefined" C. "function" D. Eorror
答案:D
3.
(function (x) { delete x; return x; })(1);A. 1 B. null C. undefined D. Error
答案:A
4.
var y = 1, x = y = typeof x; x;A. 1 B. "number" C. undefined D. "undefined"
答案:D
5.
(function f(f) { return typeof f(); })(function () { return 1; });A. "number" B. "undefined" C. "function" D. Error
答案:A
6.
var foo = { bar: function () { return this.baz; }, baz: 1 }; (function () { return typeof arguments[0](); })(foo.bar);A. "undefined" B. "object" C. "number" D. "function"
答案:A
7.
var foo = { bar: function () { return this.baz; }, baz: 1 }; typeof (f = foo.bar)();A. "undefined" B. "object" C. "number" D. "function"
答案:A
8.
var f = (function f() { return "1"; }, function g() { return 2; })(); typeof f;A. "string" B. "number" C. "function" D. "undefined"
答案:B
9.
var x = 1; if (function f() {}) { x += typeof f; } x;A. 1 B. "1function" C. "1undefined" D. NaN
答案:C
10.
var x = [typeof x, typeof y][1]; typeof typeof x;A. "number" B. "string" C. "undefined" D. "object"
答案:B
11.
(function (foo) { return typeof foo.bar; })({ foo: { bar: 1 } });A、“undefined” B、“object” C、“number” D、Error
答案:A
12.
(function f() { function f() { return 1; } return f(); function f() { return 2; } })();A、1 B、2 C、Error (e.g. “Too much recursion”) D、undefined
答案:B
13.
function f() { return f; } new f() instanceof f;A、true B、false
答案:B
14.
with (function(x, undefined){}) length;A、1 B、2 C、undefined D、Error
答案:B
15.
以下哪条语句会产生运行错误:() A.var obj = (); B.var obj = []; C.var obj = {}; D.var obj = //;
答案:A