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

回答編集履歴

1

追記

2019/12/31 09:26

投稿

AkitoshiManabe
AkitoshiManabe

スコア5434

answer CHANGED
@@ -3,4 +3,12 @@
3
3
  [target.match()](https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/String/match) の引数に文字列を格納しています(正規表現でなければなりません)。
4
4
 
5
5
  ``oks`` には、 必ず「最初の1字が格納される」のであれば、「試したこと」に記載されたコードの条件式を ``target.indexOf(ok) === 0`` や ``target.charAt(0) === ok`` で試してみてください。
6
- (この2つの関数についても MDN で再確認してください)
6
+ (この2つの関数についても MDN で再確認してください)
7
+
8
+ **追記)**
9
+ oks の評価は filter() を使ってはどうでしょうか。
10
+
11
+ 1. 求める結果が オブジェクトなので、``r={}`` にする
12
+ 2. ``oks.forEach()`` を ``tmp = oks.filter( s=>target.indexOf(s)!==-1 )`` とする。
13
+ 3. ``tmp.length`` が 1 なら r[tmp[0]], 0 なら r[error]
14
+ 初期化は ``r["hoge"] || (r["hoge"] = []);``とする