回答編集履歴

7

アロー関数のコードブロック位置がずれていたのを修正

2019/11/20 09:17

投稿

think49
think49

スコア18166

test CHANGED
@@ -128,6 +128,14 @@
128
128
 
129
129
 
130
130
 
131
+ ```JavaScript
132
+
133
+ (() => 6)(); // 6
134
+
135
+ ```
136
+
137
+
138
+
131
139
  ### remodal.js
132
140
 
133
141
 
@@ -166,14 +174,4 @@
166
174
 
167
175
 
168
176
 
169
-
170
-
171
- ```JavaScript
172
-
173
- (() => 6)(); // 6
174
-
175
- ```
176
-
177
-
178
-
179
177
  Re: ZET さん

6

remodal.js

2019/11/20 09:16

投稿

think49
think49

スコア18166

test CHANGED
@@ -128,6 +128,46 @@
128
128
 
129
129
 
130
130
 
131
+ ### remodal.js
132
+
133
+
134
+
135
+ - [Remodal/remodal_test.js at master · vodkabears/Remodal](https://github.com/vodkabears/Remodal/blob/master/test/remodal_test.js)
136
+
137
+
138
+
139
+ ```JavaScript
140
+
141
+ !(function($, location, document) {
142
+
143
+ // 中略
144
+
145
+ }(window.jQuery || window.Zepto, location, document));
146
+
147
+ ```
148
+
149
+
150
+
151
+ 少なくとも、コード単体で見た場合、`!` は**無意味な演算子**です。
152
+
153
+ 返り値を使うでもなく、`()` で既に式文になっているわけですから。
154
+
155
+
156
+
157
+ 先頭にセミコロン挿入のように、前述のコードに働く何がしかの対策かもしれませんが、思いつきません。
158
+
159
+
160
+
161
+ - [ライブラリ 先頭 セミコロン - Google 検索](https://www.google.com/search?q=%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA+%E5%85%88%E9%A0%AD+%E3%82%BB%E3%83%9F%E3%82%B3%E3%83%AD%E3%83%B3&oq=%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA+%E5%85%88%E9%A0%AD+%E3%82%BB%E3%83%9F%E3%82%B3%E3%83%AD%E3%83%B3&ie=UTF-8)
162
+
163
+
164
+
165
+ 特定のライブラリのコードであれば、制作者に尋ねるのが最良と私は思います。
166
+
167
+
168
+
169
+
170
+
131
171
  ```JavaScript
132
172
 
133
173
  (() => 6)(); // 6

5

表現の修正

2019/11/19 13:04

投稿

think49
think49

スコア18166

test CHANGED
@@ -42,7 +42,7 @@
42
42
 
43
43
 
44
44
 
45
- - 変数名を未定義で即実行
45
+ - 変数未定義で即実行
46
46
 
47
47
  - 単体の文として成立する
48
48
 

4

表現の修正

2019/11/19 12:35

投稿

think49
think49

スコア18166

test CHANGED
@@ -70,7 +70,7 @@
70
70
 
71
71
 
72
72
 
73
- "function" で始まらなければ、式文(Expression Statement)の中で即時関数を書くための条件が揃います。
73
+ "function" で始まらなければ、式文(Expression Statement)の必要条件を満たし、即時関数を書ます。
74
74
 
75
75
 
76
76
 

3

一つの書き方にとらわれず

2019/11/19 12:34

投稿

think49
think49

スコア18166

test CHANGED
@@ -102,7 +102,7 @@
102
102
 
103
103
  「関数定義後に即実行する」という**用途**で、即時関数と呼ばれます。
104
104
 
105
- 書き方は多種多様なので、一つ書き方にわれず、他のパターンも考えてみると視野が広がるでしょう。
105
+ 書き方は多種多様なので、一つ書き方にとらわれず、他のパターンも考えてみると視野が広がるでしょう。
106
106
 
107
107
 
108
108
 

2

式文(Expression Statement)の中で

2019/11/19 12:29

投稿

think49
think49

スコア18166

test CHANGED
@@ -70,7 +70,7 @@
70
70
 
71
71
 
72
72
 
73
- "function" で始まらなければ、即時関数を書くための条件が揃います。
73
+ "function" で始まらなければ、式文(Expression Statement)の中で即時関数を書くための条件が揃います。
74
74
 
75
75
 
76
76
 

1

コメントの修正

2019/11/19 12:26

投稿

think49
think49

スコア18166

test CHANGED
@@ -78,13 +78,21 @@
78
78
 
79
79
  (function () { return 1; })(); // 1
80
80
 
81
- (function () { return 2; }()); // 1
81
+ (function () { return 2; }()); // 2
82
82
 
83
83
  +function () { return 3; }(); // 3
84
84
 
85
85
  -function () { return 4; }(); // -4
86
86
 
87
87
  !function () { return 5; }(); // false
88
+
89
+
90
+
91
+ /**
92
+
93
+ * 返り値を使わない場合、"()" を使うコード以外は「余計な処理」が働きます
94
+
95
+ */
88
96
 
89
97
  ```
90
98