Prise en main rapide
Installation
Installez SmartCal via votre gestionnaire de paquets favori :
bash
bun add smartcalbash
pnpm add smartcalbash
npm install smartcalbash
yarn add smartcalImportation
SmartCal fournit un support universel (ESM et CommonJS) avec des déclarations TypeScript complètes intégrées :
typescript
import SmartCal, { compile, isValidExpression } from 'smartcal';javascript
const { default: SmartCal, compile, isValidExpression } = require('smartcal');Les 3 Modes d'Utilisation
1. Évaluation Directe (SmartCal)
Idéal pour un calcul ponctuel où l'expression n'est évaluée qu'une seule fois.
typescript
import SmartCal from 'smartcal';
// Expression arithmétique simple
const total = SmartCal('10 + 20 * 2'); // 50
// Expression avec variables
const score = SmartCal('basePoints + bonus * multiplier', {
basePoints: 100,
bonus: 25,
multiplier: 2,
}); // 1502. Évaluation Précompilée Haute Performance (compile)
Lorsque la même formule doit être réévaluée des milliers ou des millions de fois (ex: boucles de données, tableaux financiers, graphiques, serveurs), utilisez compile() :
typescript
import { compile } from 'smartcal';
// Compilation unique (Parse l'AST une seule fois + compile en fonction native JIT)
const formula = compile('price * (1 - discount) + shipping');
// Exécutions ultra-rapides (~2.5M+ ops/s)
const order1 = formula.evaluate({ price: 100, discount: 0.1, shipping: 5 }); // 95
const order2 = formula.evaluate({ price: 200, discount: 0.2, shipping: 0 }); // 1603. Validation de Formule sans Erreur (isValidExpression)
Idéal pour vérifier la validité de la syntaxe saisie par un utilisateur dans un formulaire (sans lancer d'exception).
typescript
import { isValidExpression } from 'smartcal';
console.log(isValidExpression('price * (1 - discount)')); // true
console.log(isValidExpression('price * ')); // false