18 lines
370 B
JavaScript
18 lines
370 B
JavaScript
'use strict';
|
|
|
|
var Type = require('./Type');
|
|
|
|
// https://www.ecma-international.org/ecma-262/5.1/#sec-11.9.6
|
|
|
|
module.exports = function StrictEqualityComparison(x, y) {
|
|
var xType = Type(x);
|
|
var yType = Type(y);
|
|
if (xType !== yType) {
|
|
return false;
|
|
}
|
|
if (xType === 'Undefined' || xType === 'Null') {
|
|
return true;
|
|
}
|
|
return x === y; // shortcut for steps 4-7
|
|
};
|