質問するログイン新規登録

回答編集履歴

2

コメント欄の質問に回答

2017/12/04 10:31

投稿

umyu
umyu

スコア5846

answer CHANGED
@@ -3,4 +3,40 @@
3
3
  ↓に変更してください。
4
4
  B.addEventListener('click', add);
5
5
 
6
- あと不具合を修正したら、同じ不具合が発生しないように、単体テストコードを追加するのをお勧め致します。
6
+ あと不具合を修正したら、同じ不具合が発生しないように、単体テストコードを追加するのをお勧め致します。
7
+
8
+ ---
9
+ 2017/12/04追記
10
+ できれば新しい質問にしてくださいな。
11
+ add関数をどういう関数にしたいのかで、回答が変わるのですが、
12
+ B.addEventListenerとしているので、add関数の引数は MouseEventになります。
13
+ add関数の引数のevent.targetでクリックしたボタンが取得できます。
14
+ 下はボタンをクリックしたらvalueの値を元に加算して表示するサンプルです。
15
+
16
+ ```html
17
+ <!DOCTYPE html>
18
+ <html lang="ja">
19
+ <head>
20
+ <meta charset="UTF-8">
21
+ <title></title>
22
+ </head>
23
+ <body>
24
+ <button id="button" value=1>Click!</button>
25
+ <h1 id="result">0</h1>
26
+ <script>
27
+ function add(event) {
28
+ console.log(event);
29
+ // クリックしたButtonを取得
30
+ var btn = event.target;
31
+ var result = document.querySelector('#result');
32
+ // 加算
33
+ var num = parseInt(result.textContent) + parseInt(btn.value);
34
+ result.textContent = num;
35
+ };
36
+
37
+ var B = document.querySelector('#button');
38
+ B.addEventListener('click', add);
39
+ </script>
40
+ </body>
41
+ </html>
42
+ ```

1

単体テストコードについて追記

2017/12/04 10:31

投稿

umyu
umyu

スコア5846

answer CHANGED
@@ -1,4 +1,6 @@
1
1
  > B.addEventListener('click', add()) ←関数呼び出しになってます。
2
2
 
3
3
  ↓に変更してください。
4
- B.addEventListener('click', add);
4
+ B.addEventListener('click', add);
5
+
6
+ あと不具合を修正したら、同じ不具合が発生しないように、単体テストコードを追加するのをお勧め致します。