逗号操作符在JS中多用于声明多个变量。例如var a=1,b=3;等,但除此之外逗号操作符还可以用于赋值。先看最近遇到的几个测试题,题目如下:
- 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
关于逗号赋值运算,看完这些题你应该就知道了。就不说了。