[JavaScript] Objectkey変数使う方法

1 min read

環境・状況

Electron 環境上で Windows なら「Ctrl+B」、macOS 環境なら「Cmd+B」というキー操作を同一のオブジェクトとして定義したい。

  • Windows: Ctrl+B
  • macOS: Cmd+B

方法

const isWindows = process.platform === "win32";
const controlKey = isWindows ? "Ctrl" : "Cmd";

const obj = {
  [`${controlKey}-B`]: {
    // Ctrl+B or Cmd+B
    option: true,
    shift: true,
  },
};

[{${変数名}]とすることでObjectkey名に変数を使うことができる。

Electron 環境であったのは OS の切り替えという理由だけであるので、通常の JavaScript 実行環境でもモダン環境であれば同様の実装方法で実現可能である。

このページをシェアする

関連タグ

関連記事

[CSS] 究極のIE対策

条件付きコメント / メディアクエリを利用して IE10〜IE11 に対応する

Deprecated になった jQuery API を静的に検出する方法

モチベーション / eslint-plugin-no-jquery を導入する / 実行する

Boolean型の変数に適した命名規則

背景 / プレフィックス / どのような条件なのか分かりやすくする / 否定形を避ける / 同じ意味の単語を避ける / プロジェクトの命名規則やコーディング規約に従う / Linter で矯正する

CSS in JSとは何か

想定読者 / そもそも JS フレームワーク(React、Vue.js)を採用する理由とは何か / 「命令的 UI」 と 「宣言的 UI」 / 「命令的 UI」 VS 「宣言的 UI」 / CSS in JS とは / CSS in JS ライブラリ / Emotion の使い方 / 利用するメリット / 利用するデメ