質問
今日、私は奇妙な計算に出会いました。それは次のようなものでした:
"4"- -19
「-」の間はスペースであり、必要です
答えは 23 --- 数字です
使い方?
誰かの提案
私の同僚は、それは次と等しいと言います:
"4"-(0-19)
これは本当に「ああ、これが真実だ」と思わせてくれます。
しかし、私はどのように知りませんか?
計算の順番は左から右じゃないですか?なぜ「- -」が違うのですか?これはどういう意味ですか?
今日、私は奇妙な計算に出会いました。それは次のようなものでした:
"4"- -19
「-」の間はスペースであり、必要です
答えは 23 --- 数字です
使い方?
私の同僚は、それは次と等しいと言います:
"4"-(0-19)
これは本当に「ああ、これが真実だ」と思わせてくれます。
しかし、私はどのように知りませんか?
計算の順番は左から右じゃないですか?なぜ「- -」が違うのですか?これはどういう意味ですか?
テストするのはとても簡単です。
var x = "4" - -19;
この状況では、toString()
変換が適用されます/
var y= "2" + 2;
// y would be a string: "22", not 4.
演算子を使用する場合-
、デフォルトの変換は toNumber()
です。"4"
となっ4
ております4 - (-19)
。
4 - (-19) = 4 + 19 = 23;
最初のマイナスは引き算、2 番目のマイナスはマイナスです。
4 マイナス 19 は 23 に等しい
それは私の推測です;)
基本的な数学は本当に。
var x = 4 - (-19);//I included the brackets to demonstrate the effect of the space
//x = 23
-19 (マイナス 19) として解釈されることに注意してください。
負の数を引くと、その数に相当する正の数を足すのと同じ効果があります。したがって、次のように変換されます。4 + 19 = 23
-
加算 ( +
) が使用された場合、代わりに文字列連結が実行されるため、この例では数値の結果しか生成されないことに注意することも重要です。