JavaScript Spreadsheet Calculation Features

One of the most significant benefits of using spreadsheets in your JavaScript applications is the extensive support of the calculation engine features. SpreadJS provides the most comprehensive formula support for your most demanding calculation needs to help create analysis, budgeting, dashboard, data collection and management, scientific, and financial applications. SpreadJS offers a complete function library that includes Database, Date and Time, Engineering, Financial, Information, Logical, Lookup, Math and Trigonometry, Statistical, Text and Volatile functions, dynamic arrays and custom user defined functions that are optimized for big data, complex calculations, and advanced Excel models.

Iterative Calculations

Iterative Calculations

Iterative calculations, also known as circular references, can help with finding solutions to certain calculations by running them over and over using the previous result. With this new user-requested feature, you can do things like find the future value of an investment at a certain month or provide an automatic time stamp in your files. You can now perform what-if analysis with the CalcEngine.goalSeek function, which uses iterative calculations in SpreadJS.

JavaScript Built-In Functions

450+ Built-In Functions

Build advanced formulas using Spread's powerful calculation engine. SpreadJS supports over 450 functions. You can use A1 Notation, R1C1 Notation, or Relative/Absolute referencing.

JavaScript Spreadsheet Excel-Like Indirect Function

Excel-Like Indirect Function

The INDIRECT function returns the reference specified by a text string. INDIRECT supports A1-style reference, R1C1-style reference, named reference, or a reference to a cell as a text string.

JavaScript Spreadsheet Dynamic Arrays

Dynamic and Spilled Arrays

The dynamic array support is used to replace the array formula. Formulas with the potential to return multiple results refer to a dynamic array formula. Formulas currently returning many results are referred to as spilled array formulas.

Excel Calculations JavaScript Spreadsheet Language Packages

Language Packages

SpreadJS provides localized calculation engine language packages that allow the user to enter formulas in their local languages. For example, 'SUM' will change to 'SOMME' in French.

JavaScript Spreadsheet Wildcard Function

Wildcards Functions

SpreadJS supports the use of wildcards in functions “*” substitutes any number of characters, “?” represents/substitutes one character, and “~” identifies a literal question mark or asterisk character in the text string itself.

JavaScript Spreadsheet Custom Functions

Custom Functions

In addition to the 450+ built-in functions, the SpreadJS Calc Engine also allows you to create your own custom functions for specific business use cases. They can be defined and called as you would any of the built-in functions.

JavaScript Spreadsheet Formula Audit

Formula Auditing

SpreadJS provides extensive support for formula auditing, allowing users to display relationships between formulas and cells by tracing the precedent and dependent cells in the worksheet.

JavaScript Spreadsheet Array Formulas

Array Formulas

Array formulas, often referred to as CSE (Ctrl+Shift+Enter) formulas, accept array arguments and return array values.

JavaScript Spreadsheet Aggregates

Aggregate Function

The AGGREGATE function supports 19 aggregate calculation and function options, including AVERAGE, COUNT, COUNTA, MAX, MIN, PRODUCT, SUM, VAR.S, VAR.P, MEDIAN, MODE.SNGL, LARGE, SMALL, PERCENTILE.INC., and more.

JavaScript Spreadsheet Filtering


Use the built-in Excel-like filter dialog to allow your users to automatically filter their data or take advantage of creating custom filters to show and hide the relevant data as per your applications needs.

JavaScript Spreadsheet RANDARRAY


The RANDARRAY function returns an array of random numbers. Users can specify the number of rows and columns to fill, minimum and maximum values, and whether to return whole numbers or decimal values.

JavaScript Spreadsheet SEQUENCE


The SEQUENCE function generates a list of sequential numbers in an array, such as 1, 2, 3, 4.

JavaScript Spreadsheet SORT

SORT Function

The SORT function returns a sorted array of the elements in an array. The returned array is the same shape as the provided array argument.

JavaScript Spreadsheet SORTBY

SORTBY Function

The SORTBY function sorts the contents of a range or array based on the values in a corresponding range or array.

JavaScript Spreadsheet UNIQUE function

UNIQUE Function

The UNIQUE function returns a list of unique values in a list or range. For example

=UNIQUE(array, by_col?, occurs_once?).

JavaScript Spreadsheet Implicit Intersection Operator

@ Implicit Intersection Operator

The intersection operator returns the value from an array that intersects with the cell using the operator.

JavaScript Spreadsheet Asynchronous Functions

Execute Asynchronous Functions

Use the AsyncFunction to evaluate long-running asynchronous functions such as Web API calls to retrieve or update external data. You can also perform complex financial model calculations.

JavaScript Spreadsheet Formula Text Box

Create Formula Text Boxes

Give your users the ability to view and edit the formulas in your workbooks with a formula text box. Users can create formulas and select ranges to be referenced with the range selector button.

<a href="/spreadjs/releases">What's New in SpreadJS v14</a>

What's New in SpreadJS v14

SpreadJS v14 is available. This release offers several great new features, some of which include:

  • New v14 Designer
  • Cell Interactions
  • Incremental Loading
  • Multi-Column Picker
  • Comment Indicator Customization
  • Copy Images from Excel
  • HTML Export
  • Pixel Scrolling with Scrollbar
  • Fill Effects and Patterns
  • Calculation Enhancements
  • New Charts and Enhancements

SpreadJS Releases