LoginSignup
0
1

indexOfで存在確認→処理のサンプルコード

Last updated at Posted at 2023-09-15

動機

簡単に動作確認できるサンプルを作ることで、ほらこうなったでしょ~って説明をしやすくしたい。
→せっかく作ったならゴミコードでも公開しよう!

何をするコード?

  1. nameListをkey、Object(空のclassCd、Nm、updatedAtを持つ)をvalueとしたResultDataを作成する。
  2. DBdataの各データについて、DBdata.NmがnameListに存在した場合、DBdata.Nmをkeyとして取得できるResultData.ObjectのclassCdとupdatedAtをDBdataの情報で書き換える。

実行方法

  1. 下記のコードをそれぞれhtmlファイル、jsファイルとして同じディレクトリに保存する。
  2. htmlファイルをブラウザで開く。
test.js
nameList=["test1","test2","test3","test4"]; //Array型
let ResultData={}; //Object型
DBdata = [ //Array型
    {Nm : "test1",
     classCd : "空じゃないやつ",
     updatedAt : "0930"
    },
    {Nm : "test2",
     classCd : "空じゃないやつ",
     updatedAt:"0932"
    }
];

nameList.forEach(function(listNm){
	ResultData[listNm]={
	  classCd : "空白",
	  Nm:listNm,
	  updatedAt :null
	};
});

DBdata.forEach(function(data){
   if( nameList.indexOf(data.Nm) > -1 ){
      ResultData[data.Nm].classCd=data.classCd
      ResultData[data.Nm].updatedAt=data.updatedAt
   };
});

console.log("処理後のResultData", ResultData);

test.html
<html>
    <head>
        <meta charset="UTF-8">
    </head>
    <body>
        <h1>This is testpage.</h1>
    </body>
    <script src="test.js"></script>
</html>

実行結果

  1. 開発者ツールを開く。
  2. ResultDataの中身を確認。
    image.png

DBdataに存在するtest1,test2については、ResultDataの書き換えが発生していることが分かる。
サンプルコードの値を変えて試してみよう。

以上。

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1