Web系開発メモ

Java, C#, HTML, CSS, JavaScript のことなどを書いてます。

JavaScript JSONのキーにハイフンが含まれる場合の対処方法

ハイフンが含まれる JSON のキーにアクセスして、値を取得する方法を書いていきます。

方法

角括弧を使って、下のようにアクセスします。

変数名["キー"]

以下はサンプルになります。

let msg = { "msg-id":1 };
let msgId = msg["msg-id"];

エラー例

下のようにアクセスすると、

let msg = { "msg-id":1 };
let msgId = msg.msg-id;

以下のエラーが出力されました。

Uncaught ReferenceError: id is not defined
    at ... 省略 ...

コード例

変数 msgJSONを格納して、値をログ出力する例です。

index.html

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>JSONテスト</title>
  <script>
    let msg = { "msg-id":1 };

    // NG
    //console.log(msg.msg-id);

    // OK
    console.log(msg["msg-id"]);
  </script>
</head>
<body></body>
</html>