1) ‘ == ’operator
- This operator is known as “equal to”, used to compare the value of a variable against the value of other variables or directly some other value; this equality determination also depends upon the nature of the variable, i.e. whether it’s an integer, float, etc.
- Equality operator does the type conversion if both operands under comparison are not of the same type.
- Syntax: “ x == y “
- Certain conditions are true or false, shall be observed– ‘1’ == 1 // evaluates to true.
This is because comparison operators don’t do type check; they just do value comparison, so here the internal type conversion from string to integer occurs, and then the value comes to be true.
- 0 == null // evaluates to false
- 0 == undefined // evaluates to false
- Null == undefined //evaluates to false
- Let us see few example codes for the same now; the snippet outputs can only be cross-checked at the browser’s console.
Hence the above examples have shown that while doing object comparison, if the references are not the same, then it will result in false results.
2) ‘ === ’ operator
- Till yet, we saw equals to the operator, and now we shall incorporate the ‘equals to and equals type’ operator, where the type can also be checked.
- Type checks are sometimes essential together with equality, as the business logic sometimes demands it.
- Syntax– X === Y
- Let’s directly see some snippets and will explain those accordingly.
Hence the type is evaluated here.
3) ‘ != ’ operator
- This operator is called the ‘not equals’ operator; if two operands being evaluated are not equal, then this gives value true.
- Syntax – X != Y
4) ‘ !== ‘ operator
- This operator is used to check not equals and not type equals, i.e. the value and type don’t match; if any of the two conditions are also not true, this evaluates true.
- Syntax – X !== Y
- The output against multiple cases has been mentioned in the following snippets.
5) Greater Than ‘>.’
- While implementing business logic, it can be checked whether any expression generated a value greater than other expressions; if so, then the value would evaluate to true else false.’
- Syntax – X > Y
- Let’s see a use case now and analyze the output.
6) Less than operator ‘<.’
- If in any business logic the expression carries the operand value at the left-hand side of less than the operator to be less than the value at the right-hand side, then this logic returns a true result.
- Syntax – X < Y
- Let’s see a few example snippets as mentioned below; note that the boundary condition doesn’t incorporate the equals condition.
7) Greater than and equals to ‘ >=. ‘
- This operator includes the boundary condition along with the greater than condition. Based on the required business logics, this condition can be incorporated.
- Syntax – X >= Y
8) Less than or equal to ‘ <=. ‘
- This operator includes the boundary condition along with the less than condition. Based on the required business logic, this condition can be incorporated.
- Syntax – X <= Y
- Hence, we saw various use cases where the comparisons have been drawn, and a variety of outputs have been seen; certain conditions are truthy and false based on the test operand data or the evaluation expression.
- The type checking is also an important concern.
- When being checked against the operands, the null and undefined values are special conditions that would appear while implementing the business logic.
- So null checks shall be taken care of appropriately such that unexpected conditions do not appear.
- Also, there are frameworks like Jasmine for debugging or either the same can be approached from the browser’s console.