/
dany
/
ReshenijaBotInformationSite
Обзор
Документация
Войти
/
dany
/
ReshenijaBotInformationSite
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
node_modules/value-equal/cjs/value-equal.js
38 строк
877 B
Daniil
Initial commit
31 окт 2023, 01:10
31 окт 2023, 01:10
a171ae1
Код
Авторство
О чём код?
'use strict'; function valueOf(obj) { return obj.valueOf ? obj.valueOf() : Object.prototype.valueOf.call(obj); } function valueEqual(a, b) { // Test for strict equality first. if (a === b) return true; // Otherwise, if either of them == null they are not equal. if (a == null || b == null) return false; if (Array.isArray(a)) { return ( Array.isArray(b) && a.length === b.length && a.every(function(item, index) { return valueEqual(item, b[index]); }) ); } if (typeof a === 'object' || typeof b === 'object') { var aValue = valueOf(a); var bValue = valueOf(b); if (aValue !== a || bValue !== b) return valueEqual(aValue, bValue); return Object.keys(Object.assign({}, a, b)).every(function(key) { return valueEqual(a[key], b[key]); }); } return false; } module.exports = valueEqual;