How do I add two numbers in JavaScript "without using `+` or `-` operators"?

Well ok i am answering to the question as clearly described in the header. No + and no - operations right..? Yet... not with bitwise but with pure math should be a valid answer i suppose.

var x   = 1,
    y   = 2,
    sum = Math.log2(2**x * 2**y);
console.log(sum);

We will use bitwise operators and will use recursion.

We use this method when we have a few low resources. Read more about when to use this method!

var getSum = function(a, b) {
    if (b == 0) {
        return a;
    } else {
        return getSum(a ^ b, (a & b) << 1)
    }
};

ECMAScript 6 one-liner solution as suggested by @PatrickRoberts:

const getSum = (a,b) => b ? getSum(a ^ b, (a & b) << 1) : a;

Another solutions:

2- Arrays technique Array.prototype.fill()

const getSum = (a, b) => {
  const firstArr = new Array(a).fill(true);
  const secondArr = new Array(b).fill(true);
  return firstArr.concat(secondArr).length
}

3- workaround to use plus sign without writing it:

const getSum = (a, b) => eval(''.concat(a).concat(String.fromCharCode(0x2B)).concat(b));