Page MenuHomePhorge

equality_operators.cjs
No OneTemporary

Size
3 KB
Referenced Files
None
Subscribers
None

equality_operators.cjs

// Test equality operators == and !=
// Also tests strict equality === and !==
console.log("=== Equality Operators Test ===\n");
// Test 1: Basic equality with numbers
console.log("Test 1: Number equality");
let a = 5;
let b = 5;
let c = 10;
console.log(" 5 == 5:", a == b);
console.log(" 5 === 5:", a === b);
console.log(" 5 != 10:", a != c);
console.log(" 5 !== 10:", a !== c);
console.log(" 5 == 10:", a == c);
console.log(" 5 != 5:", a != b);
// Test 2: String equality
console.log("\nTest 2: String equality");
let s1 = "hello";
let s2 = "hello";
let s3 = "world";
console.log(" 'hello' == 'hello':", s1 == s2);
console.log(" 'hello' === 'hello':", s1 === s2);
console.log(" 'hello' != 'world':", s1 != s3);
console.log(" 'hello' !== 'world':", s1 !== s3);
console.log(" 'hello' == 'world':", s1 == s3);
// Test 3: Boolean equality
console.log("\nTest 3: Boolean equality");
let t1 = true;
let t2 = true;
let f1 = false;
console.log(" true == true:", t1 == t2);
console.log(" true === true:", t1 === t2);
console.log(" true != false:", t1 != f1);
console.log(" true !== false:", t1 !== f1);
console.log(" false == false:", f1 == false);
// Test 4: Undefined and null
console.log("\nTest 4: Undefined and null");
let u = undefined;
let n = null;
console.log(" undefined == undefined:", u == undefined);
console.log(" undefined === undefined:", u === undefined);
console.log(" null == null:", n == null);
console.log(" null === null:", n === null);
console.log(" undefined != null:", u != n);
console.log(" undefined !== null:", u !== n);
// Test 5: Mixed type comparisons
console.log("\nTest 5: Type comparisons");
let num = 5;
let str = "5";
let bool = true;
console.log(" 5 != '5':", num != str);
console.log(" 5 !== '5':", num !== str);
console.log(" true != 1:", bool != 1);
console.log(" true !== 1:", bool !== 1);
// Test 6: In conditional expressions
console.log("\nTest 6: Conditional expressions");
if (5 == 5) {
console.log(" 5 == 5 in if statement: passed");
}
if (5 != 10) {
console.log(" 5 != 10 in if statement: passed");
}
if (undefined == undefined) {
console.log(" undefined == undefined in if statement: passed");
}
if (null != undefined) {
console.log(" null != undefined in if statement: passed");
}
// Test 7: Loop conditions
console.log("\nTest 7: Loop with equality");
let count = 0;
for (let i = 0; i != 5; i = i + 1) {
count = count + 1;
}
console.log(" Loop with != condition, count:", count);
// Test 8: Ternary with equality
console.log("\nTest 8: Ternary operator");
let result1 = (5 == 5) ? "equal" : "not equal";
console.log(" 5 == 5 ? 'equal' : 'not equal' =>", result1);
let result2 = (5 != 10) ? "not equal" : "equal";
console.log(" 5 != 10 ? 'not equal' : 'equal' =>", result2);
// Test 9: Object equality (by reference)
console.log("\nTest 9: Object equality");
let obj1 = { x: 1 };
let obj2 = { x: 1 };
let obj3 = obj1;
console.log(" obj1 == obj2 (different refs):", obj1 == obj2);
console.log(" obj1 === obj2 (different refs):", obj1 === obj2);
console.log(" obj1 == obj3 (same ref):", obj1 == obj3);
console.log(" obj1 === obj3 (same ref):", obj1 === obj3);
console.log(" obj1 != obj2:", obj1 != obj2);
// Test 10: Array equality
console.log("\nTest 10: Array equality");
let arr1 = [1, 2, 3];
let arr2 = [1, 2, 3];
let arr3 = arr1;
console.log(" arr1 == arr2 (different refs):", arr1 == arr2);
console.log(" arr1 === arr2 (different refs):", arr1 === arr2);
console.log(" arr1 == arr3 (same ref):", arr1 == arr3);
console.log(" arr1 === arr3 (same ref):", arr1 === arr3);
console.log("\n=== All tests completed ===");

File Metadata

Mime Type
text/plain
Expires
Sun, May 3, 9:20 AM (1 d, 18 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
519672
Default Alt Text
equality_operators.cjs (3 KB)

Event Timeline