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

回答編集履歴

2

細かいところと体裁を修正

2019/10/05 05:28

投稿

tanishi_a
tanishi_a

スコア484

answer CHANGED
@@ -1,4 +1,5 @@
1
+ ----
1
- #### どこをたら動く
2
+ > ちゃんと動くコードを書くにはどこを変えればいいのでょう
2
3
 
3
4
  1個め
4
5
  ```JavaScript
@@ -19,8 +20,12 @@
19
20
  document.getElementById(id).style.backgroundColor = ...
20
21
  ```
21
22
 
23
+ ----
22
- #### switch 以外の方
24
+ > また、switch以外に見やすく短い解はありますでしょうか。
23
25
 
26
+ この場合は、正規表現のパターンを連想配列?に入れておけば、
27
+ id ごとに switch で分岐する必要はなくなります。
28
+
24
29
  ```JavaScript
25
30
  var patterns = {
26
31
  zip11: /^\d{7}$/,
@@ -29,7 +34,8 @@
29
34
  var data = patterns[id].test(code.value);
30
35
  ```
31
36
 
37
+ ----
32
- #### 他に気になること
38
+ 他に気になること
33
39
 
34
40
  - ```tell``` は綴りが違わないか
35
41
  - ```else``` のところのインデントがずれてる

1

switch 以外の方法は? の項目にも答えました

2019/10/05 05:28

投稿

tanishi_a
tanishi_a

スコア484

answer CHANGED
@@ -1,3 +1,5 @@
1
+ #### どこを直したら動くか
2
+
1
3
  1個め
2
4
  ```JavaScript
3
5
  switch (code) {
@@ -17,10 +19,18 @@
17
19
  document.getElementById(id).style.backgroundColor = ...
18
20
  ```
19
21
 
20
- 2箇所で動作はするようになると思いますが。
22
+ #### switch 以外方法
21
23
 
22
- 他に気になること
24
+ ```JavaScript
25
+ var patterns = {
26
+ zip11: /^\d{7}$/,
27
+ tel: /^\d{11}$/
28
+ };
29
+ var data = patterns[id].test(code.value);
30
+ ```
23
31
 
32
+ #### 他に気になること
33
+
24
34
  - ```tell``` は綴りが違わないか
25
35
  - ```else``` のところのインデントがずれてる
26
36
  - 最後の2行とも、セミコロン不要