JavaScript における Ruby の unless 文の同等

Anika Tabassum Era 2023年10月12日
  1. JavaScript で unless ステートメントを実装するためのユーザー定義関数を作成する
  2. JavaScript で if-else ステートメントを否定して unless ステートメントを実装する
JavaScript における Ruby の unless 文の同等

Ruby では、条件文は unless 規則に従いますが、ほとんどのプログラミング言語は if-else 条件を好みます。メリットも同様です。好みだけが各言語に組み込まれています。

Ruby、Perl、CoffeeScript など以外は、unless ステートメントを使用します。

ここでは、私たちの場合、unless の定義を使用して、一般的な if-else ステートメントの適用を視覚化します。これは、if-else ステートメントが unless ステートメントのように動作するように構成することを意味します。

ドライブについては、unless という関数を生成します。また、直接 if-else を使用して unless ステートメントの操作を実行します。

JavaScript で unless ステートメントを実装するためのユーザー定義関数を作成する

ここで作成する関数は条件を取ります。また、その条件に基づいて、関数の充足可能性を推測する別のコールバック関数を生成します。

理解を深めるためにコード行を見てみましょう。

コードスニペット:

let unless = (condition, callback) => {
  !condition && callback();
} let a = 10;
let b = 20;
unless(a > b, () => {console.log('A should be greater than B')})

出力:

条件がない限り実行するユーザー定義関数

ご覧のとおり、関数 unless は条件を取ります。この場合、条件は a が b 未満であるということです。

ただし、unless 関数は無効になり、条件を a>b に設定すると、それを受け入れ、コールバック関数をトリガーして動作させます。しかし、一般的な if-else ステートメントのシナリオによれば、条件が else ステートメントに該当するため、コールバック関数をトリガーすることは想定されていませんでした。

JavaScript で if-else ステートメントを否定して unless ステートメントを実装する

この部分は、比較的把握しやすく、実装も簡単です。必要なのは、ifelse のように機能し、elseif のように機能するように設定することです。

if に適用される条件はすべて事前に無効化されるため、else は自動的に定義されます。状況を示すためにコードフェンスを試してみましょう。

コードスニペット:

var a = 42;
var b = 10;
if (!(a > b)) {
  console.log('Incorrect');
} else {
  console.log('Correct');
}

出力:

if-else ステートメントを否定して、ステートメントがない限り満たす

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

関連記事 - JavaScript Condition