回答編集履歴

8

まとめ「引数に」削除

2022/09/25 13:12

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -63,7 +63,7 @@
63
63
  ```
64
64
 
65
65
  ### 判断方法まとめ
66
- 以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、
66
+ 以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際はその関数やメソッドなどが
67
- - その関数やメソッドが、**引数に関数を求めているのか**
67
+ - **関数を求めているのか**
68
68
  - **値を求めているのか**
69
69
  で判断したらいいと思います。つまり、覚えるしかない!

7

関数の中で関数を実行の説明追加

2022/09/25 13:05

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -48,14 +48,18 @@
48
48
  `greet()`と書いちゃうと、実行結果の値そのものが`setInterval()`の第一引数に入ってしまうことになるので、きちんと動作しなくなります。
49
49
  setIntervalからしたら **「いやぁ、値だけもらっても何したらいいかわかんねーよ」** って感じですよね。
50
50
 
51
- そしてさらにsetIntervalからしたら、ちゃんと処理内容を指示してくれるなら関数名であろうがコード直書き(`() => {...}`)ろうが、どちらでもいいわけです。
51
+ そしてさらにsetIntervalからしたら、ちゃんと処理内容を指示してくれるなら関数名であろうがコード直書き(`() => {...}`)であろうが、どちらでもいいわけです。
52
+ そしてここは基本の内容ですが、関数の中で関数を実行する時は`myFunc();`と書きますよね。
53
+ ですので、まぁこうなるわけです↓
52
54
 
53
55
  ```javascript
54
56
  setInterval(関数名, 数値);
55
57
  // 例 setInterval(greet, 1000);
56
58
 
57
59
  setInterval(コードそのもの, 数値);
58
- // 例 setInterval(() => { ... }, 1000);
60
+ // 例 setInterval(() => {
61
+ // greet();
62
+ // }, 1000);
59
63
  ```
60
64
 
61
65
  ### 判断方法まとめ

6

setIntervalのお気持ち追記

2022/09/25 13:00

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -42,11 +42,13 @@
42
42
 
43
43
  ### setInterval()が引数に求めるものは?
44
44
  以上を踏まえて`setInterval()`について振り返ってみます。
45
- 第一引数に求められているのは、**関数** または、**コードそのもの直書き)**(これをコールバック関数といいます)で
45
+ 第一引数に求められているのは、**関数** (これをコールバック関数といいます)でしたね
46
46
 
47
47
  上記で、変数に関数を代入したときの挙動の違いをみました通り、関数が返されるのは`greet`の書き方でしたね。
48
48
  `greet()`と書いちゃうと、実行結果の値そのものが`setInterval()`の第一引数に入ってしまうことになるので、きちんと動作しなくなります。
49
49
  setIntervalからしたら **「いやぁ、値だけもらっても何したらいいかわかんねーよ」** って感じですよね。
50
+
51
+ そしてさらにsetIntervalからしたら、ちゃんと処理内容を指示してくれるなら関数名であろうがコード直書き(`() => {...}`)だろうが、どちらでもいいわけです。
50
52
 
51
53
  ```javascript
52
54
  setInterval(関数名, 数値);
@@ -58,6 +60,6 @@
58
60
 
59
61
  ### 判断方法まとめ
60
62
  以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、
61
- - そのメソッドが、**引数に関数を求めているのか**
63
+ - その関数やメソッドが、**引数に関数を求めているのか**
62
64
  - **値を求めているのか**
63
65
  で判断したらいいと思います。つまり、覚えるしかない!

5

導入とまとめの修正

2022/09/24 14:33

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -1,8 +1,7 @@
1
1
  ### 結論
2
2
  先に結論から言うと、`setInterval()`の第一引数には、
3
- - **関数** または
3
+ - **関数**
4
- - **コードそのもの**
5
- しか入れられないからです。以下で詳しく解説します。
4
+ しか入れられないからです。何を当たり前のことを!と思われるかもしれませんが、以下で詳しく解説します。
6
5
 
7
6
  ### myFunc() と myFuncの違い
8
7
  以下のような関数があったとします。
@@ -38,6 +37,9 @@
38
37
  |`greet()`|実行して戻された値|`'Hello World!'`|
39
38
  |`greet`|関数そのもの|`function greet() { ... }`|
40
39
 
40
+ よく考えると当たり前のことなんですよね。だって`myFunc()`って、**「関数を実行せよ!」** っていう命令文じゃないですか。
41
+ そりゃあ、書かれた時点で即実行して値返しちゃいますよ。
42
+
41
43
  ### setInterval()が引数に求めるものは?
42
44
  以上を踏まえて`setInterval()`について振り返ってみます。
43
45
  第一引数に求められているのは、**関数** または、**コードそのもの(直書き)**(これらをコールバック関数といいます)です。
@@ -54,6 +56,7 @@
54
56
  // 例 setInterval(() => { ... }, 1000);
55
57
  ```
56
58
 
59
+ ### 判断方法まとめ
57
60
  以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、
58
61
  - そのメソッドが、**引数に関数を求めているのか**
59
62
  - **値を求めているのか**

4

コールバック関数の説明を修正

2022/09/24 14:24

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -24,7 +24,7 @@
24
24
  そうするとそれぞれ以下のような結果が返ってきます。
25
25
 
26
26
  ```javascript
27
- // greet()を格納した変数結果
27
+ // greet()を格納した変数結果
28
28
  "Hello World!"
29
29
 
30
30
  // greetを格納した変数の結果
@@ -40,14 +40,14 @@
40
40
 
41
41
  ### setInterval()が引数に求めるものは?
42
42
  以上を踏まえて`setInterval()`について振り返ってみます。
43
- 第一引数に求められているのは、**関数**(これをコールバック関数といいます)または、**コードそのもの**(直書き)です。
43
+ 第一引数に求められているのは、**関数** または、**コードそのもの直書き)**(これをコールバック関数といいます)です。
44
44
 
45
45
  上記で、変数に関数を代入したときの挙動の違いをみました通り、関数が返されるのは`greet`の書き方でしたね。
46
46
  `greet()`と書いちゃうと、実行結果の値そのものが`setInterval()`の第一引数に入ってしまうことになるので、きちんと動作しなくなります。
47
47
  setIntervalからしたら **「いやぁ、値だけもらっても何したらいいかわかんねーよ」** って感じですよね。
48
48
 
49
49
  ```javascript
50
- setInterval(コールバック「関数, 数値);
50
+ setInterval(関数, 数値);
51
51
  // 例 setInterval(greet, 1000);
52
52
 
53
53
  setInterval(コードそのもの, 数値);
@@ -55,6 +55,6 @@
55
55
  ```
56
56
 
57
57
  以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、
58
- - **そのメソッドが引数に関数を求めているのか**
58
+ - そのメソッドが、**引数に関数を求めているのか**
59
59
  - **値を求めているのか**
60
60
  で判断したらいいと思います。つまり、覚えるしかない!

3

setIntervalの気持ちを代弁

2022/09/24 14:14

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -44,6 +44,7 @@
44
44
 
45
45
  上記で、変数に関数を代入したときの挙動の違いをみました通り、関数が返されるのは`greet`の書き方でしたね。
46
46
  `greet()`と書いちゃうと、実行結果の値そのものが`setInterval()`の第一引数に入ってしまうことになるので、きちんと動作しなくなります。
47
+ setIntervalからしたら **「いやぁ、値だけもらっても何したらいいかわかんねーよ」** って感じですよね。
47
48
 
48
49
  ```javascript
49
50
  setInterval(コールバック「関数」, 数値);

2

表に追加

2022/09/24 14:08

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -33,10 +33,10 @@
33
33
  }
34
34
  ```
35
35
  つまり、**どこかに格納されて呼び出されたときの関数が返すもの**は
36
- |代入した関数|戻り値|
36
+ |代入した関数|戻り値|例|
37
- |:--|:--|
37
+ |:--|:--|:--|
38
- |`greet()`|実行して戻された値|
38
+ |`greet()`|実行して戻された値|`'Hello World!'`|
39
- |`greet`|関数そのもの|
39
+ |`greet`|関数そのもの|`function greet() { ... }`|
40
40
 
41
41
  ### setInterval()が引数に求めるものは?
42
42
  以上を踏まえて`setInterval()`について振り返ってみます。
@@ -50,7 +50,7 @@
50
50
  // 例 setInterval(greet, 1000);
51
51
 
52
52
  setInterval(コードそのもの, 数値);
53
- // 例 setInterval(() => {...}, 1000);
53
+ // 例 setInterval(() => { ... }, 1000);
54
54
  ```
55
55
 
56
56
  以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、

1

まとめの追加

2022/09/24 14:05

投稿

Cocode
Cocode

スコア2314

test CHANGED
@@ -53,3 +53,7 @@
53
53
  // 例 setInterval(() => {...}, 1000);
54
54
  ```
55
55
 
56
+ 以上をもちまして、今後`myFunc()`と書くべきか`myFunc`のどちらなのかと迷った際は、
57
+ - **そのメソッドが引数に関数を求めているのか**
58
+ - **値を求めているのか**
59
+ で判断したらいいと思います。つまり、覚えるしかない!