🐕

hasOwnProperty(memo)

に公開

hasOwnPropertyとは?

オブジェクト自信が引数に指定されたプロパティを持っているか確かめることができる。BOOLEANが返ってくるので条件式にそのまま入れてエラーを飛ばそう

使用例

example.js
const CONTRIBUTION_WEIGHTS = {
  review_count: 2,
  picture_count: 5,
  description_edit_count: 8,
  onsen_add_count: 10
};

async function updateUserContribution(client, userId, type) {
  if (!CONTRIBUTION_WEIGHTS.hasOwnProperty(type)) {
    throw new Error('無効な貢献タイプです。');
  }

今回は、もし引数のtypeのプロパティをCONTRIBUTION_WEIGHTSが持っていなかったらエラーが飛んでいく。
引数の検証と異して非常に便利

Discussion