ハイフンが含まれる 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 ... 省略 ...
コード例
変数 msg
に JSONを格納して、値をログ出力する例です。
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>