Handlebars compare helper

jQuery February 06, 2026 javascript

Handlebars compare helper

javascript
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Handlebars.registerHelper('compare', function (a, operator, b, options) {
  let result;

  switch (operator) {
    case '==':
      result = a == b;
      break;
    case '===':
      result = a === b;
      break;
    case '!=':
      result = a != b;
      break;
    case '!==':
      result = a !== b;
      break;
    case '>':
      result = a > b;
      break;
    case '<':
      result = a < b;
      break;
    case '>=':
      result = a >= b;
      break;
    case '<=':
      result = a <= b;
      break;
    default:
      throw new Error('Unknown operator ' + operator);
  }

  if (result) {
    return options.fn(this);    // block runs if true
  } else {
    return options.inverse(this); // block runs if false
  }
});