非常蛋疼的JavaScript试题


JavaScript有很多地方和我们熟知的C、Java等的编程习惯不同,这些不同会产生很多让人意想不到的事情。前段时间在知乎有人发了写Javascrtip试题,觉得挺好玩的,这里跟大家分享一下。

01

1(function () { 
2    return typeof arguments; 
3})(); 
4 
5A. "object"
6B. "array"
7C. "arguments"
8D. "undefined"

答案:A

02

1var f = function g() {
2        return 23;
3    };
4typeof g();
5 
6A. "number"
7B. "undefined"
8C. "function"
9D. Eorror

答案:D

03

1(function (x) {
2    delete x;
3    return x;
4})(1);
5 
6A. 1
7B. null
8C. undefined
9D. Error

答案:A

04

1var y = 1,
2    x = y = typeof x;
3x;
4 
5A. 1
6B. "number"
7C. undefined
8D. "undefined"

答案: D

05

01(function f(f) {
02    return typeof f();
03})(function () {
04    return 1;
05});
06 
07A. "number"
08B. "undefined"
09C. "function"
10D. Error

答案:A

06

01var foo = {
02    bar: function () {
03        return this.baz;
04    },
05    baz: 1
06};
07(function () {
08    return typeof arguments[0]();
09})(foo.bar);
10 
11A. "undefined"
12B. "object"
13C. "number"
14D. "function"

答案:A

07

01var foo = {
02    bar: function () {
03        return this.baz;
04    },
05    baz: 1
06};
07typeof (f = foo.bar)();
08 
09A. "undefined"
10B. "object"
11C. "number"
12D. "function"

答案:A

08

01var f = (function f() {
02    return "1";
03}, function g() {
04    return 2;
05})();
06typeof f;
07 
08A. "string"
09B. "number"
10C. "function"
11D. "undefined"

答案: B

09

01var x = 1;
02if (function f() {}) {
03    x += typeof f;
04}
05x;
06 
07A. 1
08B. "1function"
09C. "1undefined"
10D. NaN

答案: C

10

1var x = [typeof x, typeof y][1];
2typeof typeof x;
3 
4A. "number"
5B. "string"
6C. "undefined"
7D. "object"

答案: B

11

01(function (foo) {
02    return typeof foo.bar;
03})({
04    foo: {
05        bar: 1
06    }
07});
08 
09A、“undefined”
10B、“object”
11C、“number”
12D、Error

答案: A

12

01(function f() {
02    function f() {
03        return 1;
04    }
05    return f();
06 
07    function f() {
08        return 2;
09    }
10})();
11 
12A、1
13B、2
14C、Error (e.g. “Too much recursion”)
15D、undefined

答案:B

13

1function f() {
2    return f;
3}
4new f() instanceof f;
5 
6A、true
7B、false

答案:B

14

1with (function(x, undefined){}) length;
2 
3A、1
4B、2
5C、undefined
6D、Error

答案:B



这是我从网上转载过来,觉得确实有意思,也有一些自己不明白的,所以不好把所有代码的分析思路分享出来。。害怕误人子弟。。大家可以测验下自己对js的规则了解有多少!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值