Zul*_*ulu 1 flashdevelop operators actionscript-3
我最近在追踪一行代码:
x -= 353 - 350
Run Code Online (Sandbox Code Playgroud)
然而,答案是-3.
令我惊讶的是,我认为 - =运算符将遵循:
x = x - 353 - 350
Run Code Online (Sandbox Code Playgroud)
然后等于 -703
为什么是实际答案-3而不是-703?
我在这个网站上寻找参考:http: //www.adobe.com/devnet/actionscript/learning/as3-fundamentals/operators.html
它给出的例子让我相信运算符 - =应该产生-703.
var x:uint = 5; x -= 5; // x is now 0
Run Code Online (Sandbox Code Playgroud)
会不会在上面的例子代表了怎样x = x - 5的0?或者是否有我缺少的替代代码/逻辑?
运营商的优势:
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Operator_Precedence
-=具有优先级3,而+与-具有优先权13(较高),
所以代码执行相当于
x -= (353 - 350)
x -= (3)
x -= 3;
x = x - 3;
Run Code Online (Sandbox Code Playgroud)
根据基本数学:
x -= (353 - 350)
x += -(353 - 350)
x += (-353 + 350)
x += (-3);
Run Code Online (Sandbox Code Playgroud)