回答編集履歴
1
ちょっとだけ修正
answer
CHANGED
@@ -9,11 +9,9 @@
|
|
9
9
|
確認した所案の定String型を返す作りになっていることが確認出来ます。
|
10
10
|
なので`3`と`2`を入力すれば`"32"`という文字列の結果になります。
|
11
11
|
|
12
|
-
|
12
|
+
> どうすればええねん。
|
13
13
|
|
14
|
-
どうすればええねん。
|
15
|
-
|
16
|
-
|
14
|
+
明示的に数値型に変換しましょう。
|
17
15
|
文字列を整数として数値に変換するには[parseInt](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/parseInt)を利用します。
|
18
16
|
|
19
17
|
```JavaScript
|
@@ -22,13 +20,11 @@
|
|
22
20
|
window.alert(num1 + num2);
|
23
21
|
```
|
24
22
|
|
25
|
-
---
|
26
|
-
|
27
23
|
> じゃあなんで`*`は意図通りに動くの?
|
28
24
|
|
29
|
-
文字列連結としては使えないからです。
|
25
|
+
`*`は文字列連結としては使えないからです。
|
30
|
-
|
26
|
+
なので「どうしよう」と困ったJavaScriptは、文字列を数値に変換しようと試みます。
|
31
27
|
|
32
|
-
この文字列
|
28
|
+
この文字列から数値への変換を試みるというのは、仕様書でToNumberとして定義されています。
|
33
29
|
調べてみたらこの記事が詳しいのでリンクを貼り付けます、興味があれば調査してみてください。
|
34
30
|
[JavaScriptで数値への変換あれこれ - Qiita](https://qiita.com/jkr_2255/items/7bd60f711b1ae6047592#tonumber)
|