always falsy
Kenji Suzuki

Kenji Suzuki @suzulabo

About: Just a programmer

Location:
Japan, Hiroshima
Joined:
Aug 17, 2025

always falsy

Publish Date: Aug 20
0 0
2025-07-08

let cancel = false;

const canceler = () => {
  cancel = true;
};

void (async () => {
  for (const favorite of favorites) {
    if (cancel) {
      break;
    }
    try {
      const channel = await fetchChannel(favorite.channelID);
      channelMap.set(favorite.channelID, channel ? channel : "NOT_FOUND");
    } catch {
      channelMap.set(favorite.channelID, "ERROR");
    }

    sortFavorites();
  }
})();

return canceler;
Enter fullscreen mode Exit fullscreen mode
  • if (cancel) {が always falsy と言われる
  • VSCode の型表示でも cancel:boolean ではなく、cancel: false と表示される
  • 以下のように object にしたらクリアできた
  • あと let cancel = 0; のように number にしてもセーフだった
  • 原因は深追いできてない
const status = { cancel: false };

const canceler = () => {
  status.cancel = true;
};

void (async () => {
  for (const favorite of favorites) {
    if (status.cancel) {
      break;
    }
    try {
      const channel = await fetchChannel(favorite.channelID);
      channelMap.set(favorite.channelID, channel ? channel : "NOT_FOUND");
    } catch {
      channelMap.set(favorite.channelID, "ERROR");
    }

    sortFavorites();
  }
})();

return canceler;
Enter fullscreen mode Exit fullscreen mode

Comments 0 total

    Add comment