前段时间在知乎有人发了写Javascrtip试题,觉得挺好玩的,这里跟大家分享一下。
一、
1 | ( function () { |
2 | return typeof arguments; |
3 | })(); |
A. "object"
B. "array"
C. "arguments"
D. "undefined"
答案:A
二、
1 | var f = function g() { |
2 | return 23; |
3 | }; |
4 | typeof g(); |
A. "number"
B. "undefined"
C. "function"
D. Eorror
答案:D
三、
1 | ( function (x) { |
2 | delete x; |
3 | return x; |
4 | })(1); |
A. 1
B. null
C. undefined
D. Error
答案:A
四、
1 | var y = 1, |
2 | x = y = typeof x; |
3 | x; |
A. 1
B. "number"
C. undefined
D. "undefined"
答案: D
五、
1 | ( function f(f) { |
2 | return typeof f(); |
3 | })( function () { |
4 | return 1; |
5 | }); |
A. "number"
B. "undefined"
C. "function"
D. Error
答案:A
六、
1 | var foo = { |
2 | bar: function () { |
3 | return this .baz; |
4 | }, |
5 | baz: 1 |
6 | }; |
7 | ( function () { |
8 | return typeof arguments[0](); |
9 | })(foo.bar); |
A. "undefined"
B. "object"
C. "number"
D. "function"
答案: A
七、
1 | var foo = { |
2 | bar: function () { |
3 | return this .baz; |
4 | }, |
5 | baz: 1 |
6 | }; |
7 | typeof (f = foo.bar)(); |
A. "undefined"
B. "object"
C. "number"
D. "function"
答案:A
八、
1 | var f = ( function f() { |
2 | return "1" ; |
3 | }, function g() { |
4 | return 2; |
5 | })(); |
6 | typeof f; |
A. "string"
B. "number"
C. "function"
D. "undefined"
答案: B
九、
1 | var x = 1; |
2 | if ( function f() {}) { |
3 | x += typeof f; |
4 | } |
5 | x; |
A. 1
B. "1function"
C. "1undefined"
D. NaN
答案: C
十、
1 | var x = [ typeof x, typeof y][1]; |
2 | typeof typeof x; |
A. "number"
B. "string"
C. "undefined"
D. "object"
答案: B
十一、
1 | ( function (foo) { |
2 | return typeof foo.bar; |
3 | })({ |
4 | foo: { |
5 | bar: 1 |
6 | } |
7 | }); |
A、“undefined”
B、“object”
C、“number”
D、Error
答案: A
十二、
01 | ( function f() { |
02 | function f() { |
03 | return 1; |
04 | } |
05 | return f(); |
06 |
07 | function f() { |
08 | return 2; |
09 | } |
10 | })(); |
A、1
B、2
C、Error (e.g. “Too much recursion”)
D、undefined
答案:B
十三、
1 | function f() { |
2 | return f; |
3 | } |
4 | new f() instanceof f; |
A、true
B、false
答案:B
十四、
1 | with ( function (x, undefined){}) length; |
A、1
B、2
C、undefined
D、Error
答案:B
求解: 第八题、第十三题、第十四题