質問編集履歴

1

a

2021/08/17 23:59

投稿

Hinoarashi.
Hinoarashi.

スコア76

test CHANGED
File without changes
test CHANGED
@@ -47,3 +47,65 @@
47
47
  初歩的な質問で申し訳ございません。
48
48
 
49
49
  よろしくお願いいたします。
50
+
51
+
52
+
53
+ #追記(2021.8.18)
54
+
55
+
56
+
57
+ 色々な方に回答いただき、自分なりに理解したことを以下の通りまとめます。
58
+
59
+ ```
60
+
61
+ //前提:インクリメントがある度に1は加算される。なので例えばインクリメントが10個あったら10加算される
62
+
63
+
64
+
65
+ //前置インクリメント:1を加算し、その後も1を評価する
66
+
67
+ //後置インクリメント:1を加算するが、その後は1を評価しない
68
+
69
+
70
+
71
+
72
+
73
+ let x = 2;
74
+
75
+ console.log(x++ + x++) //5
76
+
77
+ //最初のx++に2+1が入り、後置インクリメントなので、+1が評価されず、計算後は2となる。結果の3が次のx++に入る
78
+
79
+ //次のx++は前のx++の3が入り、3+1となる。後置インクリメントなので+1が評価されず、計算後は3となる。結果の4が次のx++に入る。
80
+
81
+
82
+
83
+ console.log(++x + ++x) //11
84
+
85
+ //x++に前の4が入り、4+1。前置インクリメントなので+1を評価し、5となる。
86
+
87
+ //次のx++に5が入り、5+1、前置インクリメントなので+1を評価し、6となる。
88
+
89
+
90
+
91
+ console.log(x++ + ++x) //14
92
+
93
+ //前の数字がなので6、6+1、後置インクリメントなので+1を評価しないので結果は6となる。
94
+
95
+ //前の数字が7なので7+1、前置インクリメントなので8となる。
96
+
97
+
98
+
99
+ console.log(++x + x++) //18
100
+
101
+ //上の3つの式と同じ感じ
102
+
103
+
104
+
105
+ console.log(x) //10
106
+
107
+ //インクリメント(x++)が8回宣言されたので2+8
108
+
109
+
110
+
111
+ ```