JavaScript の算術演算子とは何ですか?

青灯夜游
リリース: 2023-01-07 11:43:44
オリジナル
5202 人が閲覧しました

Javascript 算術演算子には、加算演算子 " "、減算演算子 "-"、乗算演算子 "*"、除算演算子 "/"、剰余演算子 "%"、増分演算子 " "、減分演算子 "--" が含まれます。 "、べき乗演算子 "**"。

JavaScript の算術演算子とは何ですか?

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

算術演算子は、数値 (リテラルまたは変数) に対して算術演算を実行するために使用されます。標準の算術演算子は、加算 、減算 -、乗算 *、除算 / です。数学における足し算、引き算、掛け算、割り算とよく似ていますので、一緒に見ていきましょう。

加算演算子

加算演算子 は値を合計するために使用されます。これは非常に単純です。

例:

次は 2 つの数値の単純な合計です:

var a = 8;
var b = a + 5;
console.log(b);  // 13
ログイン後にコピー

2 つの数値の合計を計算することに加えて、次のことを有効にすることができます。演算子 by 文字列を連結すると、結果が新しい文字列になります。

例:

を使用して 3 つの定義された変数を接続します:

str1 = "hello";
str2 = "xkd";
str3 = " ";
console.log(str1 + str3 + str2);  // 输出: hello xkd
ログイン後にコピー

さらに、数値と文字列を使用できます。 プラス記号で接続することもでき、返される結果も文字列になります。

例:

数値と数値の加算と数値と文字列の加算の違いを見てください:

num1 = 10;
num2 = 15;
str1 = "15"

console.log(num1 + num2 );  // 输出: 25
console.log(num1 + str1 );  // 输出:1015
ログイン後にコピー

一部のプログラミングでは型が異なることに注意してくださいPython などの言語では追加できません。たとえば、文字列に数字を追加するとエラーになります。 JavaScript では、数値と文字列を加算して文字列を返します。

減算演算子

減算演算子 - は 2 つのオペランドを減算するために使用でき、結果はそれらの差になります。

例:

var c = 8;
var d = c - 5;
console.log(d);  // 3
ログイン後にコピー

減算演算では、オペランドが文字列の場合、演算を実行する前に数値への変換を試みます。オペランドの 1 つが数値でない場合は、NaN が返されます。

例:

console.log(2 - "1");  //返回1
console.log(2 - "a");  //返回NaN
ログイン後にコピー

値から 0 を減算して、値を数値にすばやく変換します。たとえば、HTTP リクエストのクエリ文字列は一般に文字列数値ですが、これらのパラメータ値から 0 を引いて数値に変換することができます。これは parseFloat() メソッドを呼び出した場合と同じ結果になりますが、減算の方が効率的かつ高速です。減算演算子を使用した暗黙的な変換は、失敗すると NaN を返します。これは、parseFloat() メソッドを使用して変換を実行する場合の戻り値とは異なります。

たとえば、文字列「100aaa」の場合、parseFloat() メソッドは最初のいくつかの数値を解析できますが、減算演算子の場合、変換する前に完全な数値である必要があります。

console.log(parseFloat("100aaa"));  //返回100
console.log("100aaa" - 0);  //返回NaN
ログイン後にコピー

ブール値の場合、parseFloat() メソッドは true を 1 に、false を 0 に変換できますが、減算演算子はそれを NaN として扱います。

オブジェクトの場合、parseFloat() メソッドは変換のためにオブジェクトの toString() メソッドの呼び出しを試みますが、減算演算子はまず変換のためにオブジェクトの valueOf() メソッドの呼び出しを試み、次に toString() を呼び出します。失敗したら変換を実行します。

特殊オペランドの減算演算に注意してください。 #

var n = 5;  //定义并初始化任意一个数值
console.log(NaN - n);  //NaN与任意操作数相减,结果都是NaN
console.log(Infinity - n);  //Infinity与任意操作数相减,结果都是Infinity
console.log(Infinity - Infinity);  //Infinity与Infinity相减,结果是NaN
console.log((-Infinity) - (-Infinity));  //负Infinity相减,结果是NaN
console.log((-Infinity) - Infinity);  //正负Infinity相减,结果是-Infinity
ログイン後にコピー

反転演算

特殊オペランドの反転演算に注意

console.log(- 5);  //返回-5。正常数值取负数
console.log(- "5");  //返回-5。先转换字符串数字为数值类型
console.log(- "a");  //返回NaN。无法完全匹配运算,返回NaN
console.log(- Infinity);  //返回-Infinity
console.log(- (- Infinity));  //返回Infinity
console.log(- NaN);  //返回NaN
ログイン後にコピー

乗算演算子

乗算演算子

# の結果はオペランドの積です。

例:

var e = (8 + 5) * 3;
var f = 'xkd' * 3;
console.log(e);  // 输出:39
console.log(f);  // 输出:NaN
ログイン後にコピー

文字列を使用して数値を乗算すると、最終的には無効な数値である NaN が返されます。

除算演算子

除算演算子

/の結果はオペランドの商です。左側のオペランドは被除数で、右側のオペランドは次のようになります。除数。

例:

var g = (9 - 3) / 3;
var h = 3.0 / 1.0;
var i = 1 / 2;

console.log(g);  //输出:2
console.log(h);  //输出:3
console.log(i);  //输出:0.5
ログイン後にコピー

注意する必要があるのは、JavaScript では、

1 / 2 このような小数点を伴う演算です。結果は小数点になります (例: 0.5)。 Java などの言語では、数値は明確な浮動小数点数である必要はなく、1 / 2 の戻り結果は 0 です。

剰余演算子

パーセント記号

% は剰余演算子で、最初のオペランドを 2 番目のオペランドのモジュロ (剰余) に返します。例: x % y、結果は xy で割った整数の余りです。数学でも学んだ剰余は、整数トリガーで除算されない被除数の部分を指すことを誰もが知っているはずです。

例:

たとえば、次のコード:

var m = 9;
var n = 2;
var mn = m % n;
console.log(mn);  //输出: 1
ログイン後にコピー

出力結果は 1 で、これは非常に理解しやすいです。 9 % 2

9 を 2 で割った余り、つまり 1 を求めます。 それでは、

12 % 5

の場合、出力はどうなるでしょうか? 12 を 5 で割ると 2 が残るので、結果は 2 になります。これで、% の使用方法がわかったはずです。

インクリメント演算子

インクリメント演算子

オペランドを 1 つ増やして数値を返します。 x などの接尾辞を使用すると、増加する前に値が返されます。 x のように前に付けると、値はインクリメント後に返されます。 #########例:######

假设我们定义了一个变量 i,然后使用自增运算符对 i 进行递增运算,将递增后的 i 赋值给了变量 j,最终j 的输出结果为 6:

var i = 5;
i++;
var j = i;
console.log(j);  // 6
ログイン後にコピー

那为什么结果会是6呢,i++ 其实就是表示在 i 的基础上加一,相当于i + 1

然后我们看一下递增运算符前置和后置,到底有什么区别,例如下面这个代码:

var a = 9;
console.log(a++);  // 输出:9

console.log(a);    // 输出:10

console.log(++a);  // 输出:11
ログイン後にコピー
  • 变量 a 的值为9,然后使用后置递增运算符a++,第一次输出会在递增之前就返回数值,即输出结果还是 9。
  • 然后此时输出 a 的值,可以看到 a 的值已经为10了,因为已经执行了一次递增运算符,所以加 1。
  • 接着第三次输出时,使用前置递增运算符,这会在递增之后才返回数值,即输出结果为11。

递减运算符

递减运算符 -- 为其操作数减去1,并返回一个数值。递减运算符和递增运算符的使用方法差不多,一个是减、一个是加,正好相反。

如果后置使用递减运算符,则在递减之前返回数值。如果前置使用,则在递减之后返回数值。

示例:

var b = 7;
console.log(b--);  // 输出:7

console.log(b);    // 输出:6

console.log(--b);  // 输出:5
ログイン後にコピー
  • 变量b的值为7,然后使用后置递减运算符b--,会在递减之钱返回数值,即7。
  • 然后第二次输出变量b,此时已经成功执行b-- ,会在此基础上减1,所以输出6。
  • 第三次输出--b,使用后置递减运算符,会在递减之后返回数值,所以会输出5。

幂运算符

幂运算符 ** 返回第一个操作数做底数,第二个操作数做指数的乘方。例如5 ** 2 表示 5 的 2 次方,根据所学数学知道就能得出结果为25。

示例:

下面这个代码表示求 6 的 3 次方,相当于 6 * 6 * 6,结果为216:

var x = 6;
var y = x ** 3;
console.log(y);  // 216
ログイン後にコピー

上面的运算出的结果与 Math.pow(x, y) 是相同的,例如:

var x = 6;
var y = Math.pow(x,3);
console.log(y);  // 216
ログイン後にコピー

pow()方法可返回 x 的 y 次幂的值。

【推荐学习:javascript高级教程

以上がJavaScript の算術演算子とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート