首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

Javascript 中的逗号操作符

2013-11-04 
【原创】Javascript 中的逗号操作符scriptvar a 10, b 20function foo(){ return a++, b++, 30 }var

【原创】Javascript 中的逗号操作符
<script>var a = 10, b = 20;function foo(){ return a++, b++, 30; }var c = foo();alert(a); // 返回11alert(b); // 返回21alert(c); // 返回30</script>

?

优先级:

逗号运算符在JavaScript在的优先级是最低的,比函数调用和赋值运算符还低。(注:函数调用确实是函数调用运算符

<script>alert(10*2, 10*3); // 输出20</script>

?

?

根据逗号运算符的原理来解释的话,那应该是输出30才对,但是注意:逗号运算符在JavaScript在的优先级是最低的。按照平时的思维方式也应该返回20。

如果要输出30应该这样写:

<script>alert( (10*2, 10*3) ); // 输出30</script>

?

如果需要深入研究大家可以做做下面的题(适合技术狂人):

来自?http://www.easyui.info/archives/1527.html

?

1. var a = (1,5 - 1) * 2;a的值为()          A、0.999999999  B、1  C、2  D、8  E、0.5       2. var b = 10,c = (                    20,                    function (x) { return x + 100},                    function () { return arguments[0]}                  );          var a = b + c({x: 10}).x;       a的值为()          A、30、10  B、20  C、10  D、30、110  E、NaN 、10    3. function f(x, y) {           x = 10;           alert(             arguments[0],             arguments[1]           );       }          f();结果为       A、null,undefined  B、10  C、undefined  D、0, NaN  E、 "undefined"      4. var f = (function f(){ return "1"; }, function g(){ return 2; })();       typeof f;的值为()              A、"string" B、"number" C、"function" D、"undefined"      5. var x = 10;       var foo = {           x: 20,           bar: function ()           {               var x = 30;               return this.x;           }       };          alert(         foo.bar(),         (foo.bar)(),         (foo.bar = foo.bar)(),         (foo.bar, foo.bar)()       );    结果为:    A、15 B、20  C、30 D、10   

?

?

?

?

热点排行