JavaScriptでNullish coalescingモドキで遊ぶ

公開日:2019-06-24
最終更新:2019-06-24

はじめに

const value = hoge || 'default';  

上のものは、valueに対し、hogenullundefinedだった場合は'default'を、そうでなかった場合はhogeを代入するものです。
嘘です。hogefalse0''だった場合も'default'が代入されてしまいます。Falsyな値なので。

そこで、偉い人たちはNullish coalescingという新機能を検討しています。

const bool = false ?? true;  
console.log(bool);  
// => false  

??の左側がnullundefinedだった場合には右側を返すというものです。

…自力で実装できるじゃん。

Nullish coalescingモドキ

const nullishCoalescing = value => {  
  return _default => {  
    if (value == null) return _default;  
    return value;  
  };  
};  

console.log(nullishCoalescing(false)(true));  
// => false  

value == nullvalue === null || value === undefinedと同じです。

おわりに

無駄にカリー化
冗長ですがよしとします。

記事が少しでもいいなと思ったらクラップを送ってみよう!
13
+1
@okayuの大して技術的ではないブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする