B-Teck!

お仕事からゲームまで幅広く

【Javascript】連想配列の値やキーに特定の値が存在するか調べる

var Country= {
  "Japan": "日本",
  "China": "中国",
  "Korea": "韓国",
  "Vietnam": "越南"
};

function getHashProperties(a){
  let r = [];
  for(let v in a){
    if(a.hasOwnProperty(v))
      r.push(a[v]);
  }
  return r;
}

// 入力したオブジェクトのプロパティの値を配列に展開する
// -> Array [ "日本", "中国", "韓国", "越南" ]
console.log(getHashProperties(Country));

// includesで戻り値配列の中に値が存在するかを確認できる
// -> true
// -> false
console.log(getHashProperties(Country).includes('日本'));
console.log(getHashProperties(Country).includes('Japan'));

// indexOfでも当然判定できる
// -> 3
// -> -1
console.log(getHashProperties(Country).indexOf('越南'));
console.log(getHashProperties(Country).indexOf('Vietnam'));

// 特定の名前のプロパティが存在するかは下記で判断できる
console.log(('China' in Country));
console.log(('韓国' in Country));