Aller au contenu principal

Équivalence native

Chaque fonction Taphos est @deprecated par conception : l'objectif est de migrer vers du JavaScript natif. Mais toutes les fonctions n'ont pas un équivalent natif direct. Cette page classe chaque fonction par son niveau d'équivalence native.


Niveaux d'équivalence

NiveauSignification
🟢 API nativeUn équivalent natif direct existe. Vous pouvez remplacer la fonction par un seul appel natif.
🟡 CompositionPas d'appel natif unique, mais réalisable en composant quelques API natives ensemble.
🔴 PersonnaliséPas de vrai équivalent natif. La fonction implémente une logique qui n'existe pas nativement.

Différences de comportement

Certaines fonctions marquées 🟢 ou 🟡 ont un équivalent natif, mais avec des différences de comportement subtiles entre taphos/lodash et l'implémentation native. Celles-ci sont marquées avec . Cliquez dessus pour voir les détails.

Ces différences sont intentionnelles. Taphos s'aligne sur la sémantique JavaScript moderne plutôt que de reproduire chaque cas limite de Lodash. Si Lodash retourne true pour isNaN(new Number(NaN)) mais que Number.isNaN ne le fait pas, ce n'est pas un bug, c'est le web qui avance.

astuce

Dans la plupart du code réel, ces différences n'ont pas d'importance. Le est là pour que vous puissiez prendre une décision éclairée, pas pour vous décourager de migrer.


Fonctions par niveau

🟢 API native104/127
Array
at(), compact(), concat(), find(), findIndex(), first(), flatten(), flattenDeep(), flattenDepth(), fromPairs(), head(), indexOf() ⚠️, initial(), join(), last(), lastIndexOf() ⚠️, nth(), pullAll(), remove(), slice(), tail()
Collection
each(), eachRight(), every(), filter(), flatMap(), includes(), map(), pluck(), reduce(), reduceRight(), reject(), some(), uniq()
Function
bind(), defer(), delay(), partial(), rest(), spread(), unary()
Lang
eq() ⚠️, gt(), gte(), isBuffer(), isElement() ⚠️, isFinite(), isInteger(), isNaN() ⚠️, isSafeInteger(), isTypedArray() ⚠️, isWeakMap(), isWeakSet(), lt(), lte(), toInteger() ⚠️, toNumber(), toString() ⚠️
Math
add(), ceil() ⚠️, divide(), floor() ⚠️, max(), min(), multiply(), round() ⚠️, subtract()
Object
assign(), extend(), forIn() ⚠️, hasIn(), invoke(), keys(), toPairs(), unset(), update(), values()
String
endsWith(), lowerCase(), padEnd(), padStart(), parseInteger(), repeat(), replace(), split(), startsWith(), toLower(), toUpper(), trim(), trimEnd(), trimStart(), upperFirst()
Util
attempt(), castArray(), cloneDeep() ⚠️, constant(), identity(), property(), propertyOf(), stubArray(), stubFalse(), stubObject(), stubString(), stubTrue()
🟡 Composition21/127
Array
pull() ⚠️, pullAllBy() ⚠️, pullAllWith() ⚠️, pullAt() ⚠️, without(), zipObject()
Collection
flatMapDeep(), flatMapDepth(), size(), sortBy()
Function
wrap()
Lang
toFinite(), toSafeInteger() ⚠️
Object
create(), forOwn() ⚠️, transform() ⚠️
Util
nthArg(), overEvery(), overSome(), rangeRight(), toPath()
🔴 Custom2/127
String
pad(), upperCase()

Related