回答編集履歴
2
質問者のやろうとしているやり方を見逃していたため、言及
test
CHANGED
@@ -90,6 +90,30 @@
|
|
90
90
|
|
91
91
|
|
92
92
|
|
93
|
+
また、主な処理を、クラスの中に~とおっしゃっておりますが、
|
94
|
+
|
95
|
+
もしかして、
|
96
|
+
|
97
|
+
クラスのメソッドの中でいちいち、
|
98
|
+
|
99
|
+
window.addEventListnerなどを実行しているということでしょうか?
|
100
|
+
|
101
|
+
だとしたら、かなりよろしくなく、メモリーリークを誘発させる書き方だと思います。
|
102
|
+
|
103
|
+
addEventListnerは、その名の通り、**イベントを追加するメソッド**です。
|
104
|
+
|
105
|
+
つまり、そんなクラスを作った日には、インスタンスを生成するないし、該当メソッドを実行する度に、イベントを追加されてしまいます。
|
106
|
+
|
107
|
+
一、二個ならまだしも、一万個とか生成した時は、
|
108
|
+
|
109
|
+
管理不能、メモリ解放不能な変数や関数を、大量にメモリ上に残すことになります。
|
110
|
+
|
111
|
+
addEventListnerは、同スクリプト内で大量に使うなら、必要ないものは削除できるようにしておくか、
|
112
|
+
|
113
|
+
そもそも、同じオブジェクトにはあまり何個も重ねて処理を追加しないように書く工夫が必要かと思います。
|
114
|
+
|
115
|
+
|
116
|
+
|
93
117
|
### 大量の要素の管理方法
|
94
118
|
|
95
119
|
|
1
構文が間違っている個所があったため、修正
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
javascriptのclass構文は、プロトベース構文の糖衣構文になります。
|
10
10
|
|
11
|
-
とまぁ、
|
11
|
+
とまぁ、class構文、アロー関数を使う事を前提とされているようなので、IEは対象ブラウザとして考えないでいい状況との認識も併せてお答えしていきます。
|
12
12
|
|
13
13
|
|
14
14
|
|
@@ -42,7 +42,7 @@
|
|
42
42
|
|
43
43
|
**インスタンスを生成する際には、DOMが読み込まれている状態でないと、
|
44
44
|
|
45
|
-
当然エラーが起きます。
|
45
|
+
当然エラー**が起きます。
|
46
46
|
|
47
47
|
クラスの記述は、ロード系イベントの外側でけっこうですが、
|
48
48
|
|
@@ -86,7 +86,7 @@
|
|
86
86
|
|
87
87
|
つまり一般的とか、考えとかではなく、
|
88
88
|
|
89
|
-
そもそも、**DOMの取得なりのコントロールは、DOMを読み込んでからでないと動かないんです。
|
89
|
+
そもそも、**DOMの取得なりのコントロールは、DOMを読み込んでからでないと動かない**んです。
|
90
90
|
|
91
91
|
|
92
92
|
|
@@ -152,9 +152,7 @@
|
|
152
152
|
|
153
153
|
this._publicElements = {
|
154
154
|
|
155
|
-
editorInput: new editorInputInterface("postText", "postTitle", "input[name='post_label']", "input[name='post_seo_about']")
|
155
|
+
editorInput: new editorInputInterface("postText", "postTitle", "input[name='post_label']", "input[name='post_seo_about']"),
|
156
|
-
|
157
|
-
},
|
158
156
|
|
159
157
|
// .
|
160
158
|
|