指定したキーが連想配列に存在するか確認する - JavaScript

Javascriptで指定したキーが連想配列に存在するか確認するコードを紹介します。

概要

Javascriptで指定したキーが連想配列に存在するかを調べるには in 演算子を利用します。
連想配列名 in キー名
連想配列にキーが含まれていれば true 含まれていなければ false になります。

コード

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
  <script type="text/javascript">
    var data = new Array();

    function init() {
      data["URL"] = "http://www.ipentec.com";
      data["SiteName"] = "iPentec";
      data["Since"] = "2000/01/25"
      data["mail"] = "info@ipentec.com"
    }

    function CheckData() {
      var text = document.getElementById("textBox1").value;
      if (text in data == true) {
        document.getElementById("output").innerText = "キー名: " + text + " は配列に含まれています。(値: "+data[text]+" )";
      } else {
        document.getElementById("output").innerText = "キー名: " + text + " は配列に含まれていません。";
      }
    }
  </script>
	<meta charset="utf-8" />
</head>
<body onload="init();">
  <input type="text" id="textBox1" /><br/>
  <input type="button" value="Button" onclick="CheckData();"/><br/>

  <div id="output"></div>
</body>
</html>

解説

  var data = new Array();

  function init() {
    data["URL"] = "http://www.ipentec.com";
    data["SiteName"] = "iPentec";
    data["Since"] = "2000/01/25"
    data["mail"] = "info@ipentec.com"
  }
上記コードで連想配列に値を代入します。

  function CheckData() {
    var text = document.getElementById("textBox1").value;
    if (text in data == true) {
      document.getElementById("output").innerText = "キー名: " + text + " は配列に含まれています。(値: "+data[text]+" )";
    } else {
      document.getElementById("output").innerText = "キー名: " + text + " は配列に含まれていません。";
    }
  }
ボタンクリック時には上記の CheckData() 関数が実行されます。検索するキー名はテキストボックスに入力された値を読み込みtext変数に代入します。in 演算子を用いてdata連想配列にtextのキーがあるか判定し、キーがある場合はメッセージと連想配列の値を表示します。キーがない場合はメッセージのみを表示します。

実行結果

上記のHTMLファイルをWebブラウザで表示します。下図の画面が表示されます。


上部のテキストボックスに"URL"を入力します。入力後[Button]ボタンをクリックします。


"URL"は連想配列に存在しているため、連想配列に含まれている旨のメッセージと、その値が画面に表示されます。


"Since"を入力した場合も、連想配列に存在しているため、値が表示されます。


テキストボックスに連想配列に存在していないキーを指定した場合は、配列に含まれていない旨のメッセージが表示されます。



指定したキーの要素が連想配列に存在しているか確認できました。

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2017-09-04
作成日: 2015-12-18
iPentec all rights reserverd.