質問編集履歴
1
誤って途中で質問起票してしまったため文を完成させた
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
名前付き引数の中括弧の意味・中括弧の有無による挙動の違いについて
|
1
|
+
名前付き引数の中括弧の意味・中括弧(引数)の有無による関数挙動の違いについて
|
test
CHANGED
@@ -18,13 +18,13 @@
|
|
18
18
|
|
19
19
|
|
20
20
|
|
21
|
-
実行コマンド1:print(getTriangle({ base:5, height:4 }));
|
21
|
+
- 実行コマンド1:print(getTriangle({ base:5, height:4 }));
|
22
22
|
|
23
|
-
出力1:10
|
23
|
+
- 出力1:10
|
24
24
|
|
25
|
-
実行コマンド2:print(getTriangle({ base:5 }));
|
25
|
+
- 実行コマンド2:print(getTriangle({ base:5 }));
|
26
26
|
|
27
|
-
出力2:2.5
|
27
|
+
- 出力2:2.5
|
28
28
|
|
29
29
|
|
30
30
|
|
@@ -32,14 +32,24 @@
|
|
32
32
|
|
33
33
|
Exception: TypeError: Right side of assignment cannot be destructuredというエラーに
|
34
34
|
|
35
|
-
なってしまいました。一方、実行コマンド4のようにしたところ
|
35
|
+
なってしまいました。一方、実行コマンド4のようにしたところ、正常に関数が実行されました。
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
-
実行コマンド3:print(getTriangle(
|
39
|
+
- 実行コマンド3:print(getTriangle());
|
40
40
|
|
41
|
-
出力3:
|
41
|
+
- 出力3:Exception: TypeError: Right side of assignment cannot be destructured
|
42
42
|
|
43
|
-
実行コマンド4:print(getTriangle({}));
|
43
|
+
- 実行コマンド4:print(getTriangle({}));
|
44
44
|
|
45
|
-
出力:0.5
|
45
|
+
- 出力4:0.5
|
46
|
+
|
47
|
+
- 実行コマンド5:print(getTriangle(1));
|
48
|
+
|
49
|
+
- 出力5:0.5
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
冒頭のような関数定義の場合に、引数なしで実行した場合にエラーが生じてしまうのはなぜでしょうか。
|
54
|
+
|
55
|
+
ご教示いただけると幸いです。
|