Licence
MIT
Version
1.0.0
Deps
26
Size
20 kB
Vulns
0
Weekly
0
@ryniaubenpm/nulla-eveniet-laudantium 
Are these two values conceptually equal?
Example
var isEqual = require('@ryniaubenpm/nulla-eveniet-laudantium');
var assert = require('assert');
var primitives = [true, false, undefined, 42, 'foo'];
primitives.forEach(function (primitive) {
assert.equal(isEqual(primitive, primitive), true);
});
assert.equal(isEqual(/a/g, /a/g), true);
assert.equal(isEqual(/a/g, new RegExp('a', 'g')), true);
assert.equal(isEqual({ a: 2 }, { a: 2 }), true);
assert.equal(isEqual([1, [2, 3], 4], [1, [2, 3], 4]), true);
var timestamp = Date.now();
assert.equal(isEqual(new Date(timestamp), new Date(timestamp)), true);
Want to know why two values are not equal?
Will return an empty string if isEqual would return true - otherwise will return a non-empty string that hopefully explains the reasoning.
var whyNotEqual = require('@ryniaubenpm/nulla-eveniet-laudantium/why');
assert.equal(whyNotEqual(1, 1), '');
assert.equal(
whyNotEqual({ a: 1 }, { a: 2 }),
'value at key "a" differs: numbers are different: 1 !== 2'
);
Tests
Simply clone the repo, npm install, and run npm test
Keywords
ES5duplexsignalsprototypeutilityObject.isbyteLengthObject.assignsetpyyamlxtermjavascriptsuperagent[[Prototype]]schemeless.jslanguagetrimbrowserlistES6hasassigntypeofwaittypedarrayWeakMapasciigetOwnPropertyDescriptortddwordwrapcallbind0pluginrmdirmkdirpRegExp.prototype.flagsesjsreducecoresanitizationdirectorytakehandlersartsearchcharacterrfc4122browserslistaccessibilityisprogresswalkdomkarmaastargumentes2018xsscallboundkoreanworkspace:*protobufcodesthreeObject.keysReactiveX-0iterationreact animationrangeerrorutilsurleventsconsolefullwidthwidthglobUint32ArraymimetypesnodedefaulttypeerrorjsdomReflect.getPrototypeOfincludessymbolsvarttywatcherlaunchArray.prototype.flattentextexesymlinkajvutilitiestypescriptworkerTypedArrayguidponyfillxhrtoArrayStyleSheetchromewritablelistenerspostcsscolourstyleguideclassnamemake dirpreserve-symlinks.envfseventspreprocessorpromisesinstallspawninternal slotwarningtranspilerstylingsameValueZerocssfast-copyCSSStyleDeclarationconfigurableramdawatchFileeast-asian-widthfast-clonel10nObject.definePropertydebuggerquoteserializeMapmovecolumnsECMAScript 2022MicrosoftPushshebangjson-schema-validatorregular expressionshashpathtesterweakmaplimitstdlibieterminalargumentsfindLastIndexregular expressionspeccurriedsigintRxJSvalidationjsdiffECMAScript 2023macosclientlookregularrecursiveparentsarraybufferlimitedflatMapruntimeAsyncIteratorfigletRFC-6455Int8ArrayframerYAMLsetImmediategenericsgroupByRegExp#flagsES2019hardlinksviewjQuerygradients css3containscachewatchingbcryptchromiumeslintrobustES2015indicatorlook-upfolderfastcloneSymbol.toStringTagflattenless cssdefineonceshammatchdeep-copyString.prototype.matchAllprotoeslintplugintrimLeftbindcreatereadtermenvironmentthrottlelintbddfetchsanitizeTypeScriptObject.getPrototypeOfcopyeventEmitterdeep-clonegetopttoolsBigUint64Arraytypesjsonschemaxdg-openpositiveminimalcompareweaksetdataViewsuperstructstringifyes8filterformattingloadinglibphonenumbererrorperformanceemojicryptographqldebuglazyarktypewhichtouchmapstylesprivate datapushtrimStartnegativefind-upfindLastcore-jsnodejstslibdeterministicprocessrapidUnderscorevariablessortedcomputed-typessharedgetcss nestingstreamexitfast-deep-copygetintrinsicmodulesparentECMAScript 2020apivaluespackagetc39rm -frtyperesolveBigInt64ArraybrowsercallparserfindupURLserializerawesomesauceArrayBuffer#slicereadablesequenceslicezeroschemacall-boundemitproptaplinewrapObservablesspringstableinputtoobjecttostringtagcliutilIteratortaskfile systemopenseslintconfigsymbolinspectimmutableserializationstatusoptimistes2017jasminepackage managergesturespopmotionxdgbuffersJSON-Schemachildes2016isConcatSpreadablestylesheetreducerenvidlefilewebsiteES2020moduleecmascriptmakedragfromstyled-componentscharactersES2021entriesTypeBoximporttacitArrayBufferdeepclonesortfindoptionnegative zeroStreamtypanionformsobjectequalityawaitnativeexpressioneslint-pluginES8channelSetfastcopysettingsObservableFloat64ArraycheckArray.prototype.flatMapgetterES2023es-shimsobjSymbolpersistentcallbackzodassertfasthttpwordbreaktypedarraysupiteratehelperswgetWebSocketmatchAllspeedbatchbyteshrinkwrapinstallerformatargsrateregexpscheme-validationbabelnopenested cssECMAScript 2019connectcommandcmdsetterprivatecall-bindsyntaxerrorio-tsstreamsirqtestlessdescriptorsECMAScript 5expresssymlinksFloat32ArrayelectronmkdirswrapbannerrgbclassesStreamspipedateparse256mochaes2015lastpackage.jsonautoprefixerenumerable__proto__escaperemovemkdirwalkingclassnamescompilerES2022columndotenves6ArrayBuffer.prototype.slicesafestreams2waapioutputhasOwnimmerarraymergeansiiteratorboundvalidatees-abstractbabel-corereact-testing-libraryredactreusewritetestingjsxlengthcommanderpureexecutableefficientkeysjapanesereact-hook-formbusyarraysless mixinsflagconsumedifftypesafeECMAScript 7colorquerycjktsjsonpathES2016whatwgdatastructurephonepackagesreal-timeapollomime-dbeverygdprclass-validatorloggerdeepURLSearchParamsaccessorhooksbufferfplesscssvariables in csspromisemulti-packagemiddlewareharmonynamedatareact-hooksES7Object.fromEntriesUint8ClampedArrayArray.prototype.containsRxforEachbootstrap lesssigtermJSONECMAScript 2018corssharedarraybufferprotocol-buffersjwtmomentjestcurloptimizershimsetPrototypeOfuninstallshellargparsepatchconcatMapcommand-lineFunction.prototype.namejson-schemaestreecolorsenderObject.valuesless compilerES2018ESnextextendinternalgradients cssdescriptorCSSreact poseprettynumberexecInt32Arraycode pointshttpscensorargvpnpm9qsa11yreduxform-validationletdirtrimEndtoStringTagopenerstyletoolkitrequesttranspilestatelessbundlerdeleteformvisuallinkcss lessintrinsicbreakESwebratelimitchaidataviewdeepcopyconstgetPrototypeOfmobilesyntaxpicomatchredux-toolkitstarterPromiseArray.prototype.findLastIndexeditoryamlUint8ArrayfunctionalECMAScript 3ES3fixed-widthflagshigher-orderjoilrues7configbundlingsomeframework3dinferenceextraECMAScript 2017WeakSetcollection.es6poseECMAScript 2021cloneloggingnames$.extendArray.prototype.findLastassertsregexsignal@@toStringTagstartcircularequali18ngrouputil.inspectfunctionmimevalueperformantlockfileyuprminterruptsdependency managervalidHyBiprunesidematcheslogtraverseES2017invariantrm -rfcryptajaxtrimRightauthenticationcompile lessunicodestringtypedeventDispatcherArrayObject.entriesreadablestreamopencoercibleassertionerror-handlinguuidairbnbvalidatorfastifyreactstringifierlinuxqueuepostcss-pluginbyteOffsetpoint-freeECMAScript 6definePropertybluebirdjson-schema-validationtelephoneObjectArray.prototype.filterfast-deep-clonedependenciesrequireInt16ArrayECMAScript 2015functionsmruArray.prototype.includes
