Skip to content
umangenius-logo
U Man Genius docs
  • Pages
    • Welcome
      • ninext-loupe
        Ninext documentation
        • ninox-logo
          Ninext APP
        • Installation
        • Update history
        • Uninstall
        • Popup ninext
          • Fields and Functions
          • Debug tracer
          • 🚧 Errors
          • Finder
        • 🚧 Edit field
        • Copy, paste, duplicate & delete
        • HTML helping functions
        • Native JS
          • Clipboard sample
        • Badges
        • View field event
        • Button event
      • ninox-logo
        Scripting tips & tricks
        • icon picker
          General Information
        • Var and Let
        • Functions
        • If Then else
        • For and while loops
        • select, where, from, to
        • Order By (or Order)
        • create, delete, and duplicate
        • JSON in Ninox
        • Arrays in Ninox
        • Undocumented functions in Ninox
        • Manipulating Record IDs in Ninox
        • Dynamic Choice & MultiChoice

General Information

Last edited 351 days ago by Jacques TUR.

Ninox is a typed and precompiled language. This means that the data types handled by the language are known in advance, unlike other languages such as JavaScript, which can handle variables without knowing their types.
One of the major advantages of Ninox is that the code it generates is particularly reliable, with malfunctions occurring only on very rare occasions.
about
For your information, Ninox script is compiled into JavaScript before being executed.

Nested and Linear Code

Each function or statement returns a value that can be directly passed as a parameter to another function or statement:
var a := format(now(), "DD/MM/YYYY");
Thus, it is possible to assign a set of nested code to a variable:
var a := true;
var b := if a then "true" else "false";
It is also possible to assign to b the result of a block of linear code enclosed in parentheses:
var b := (
var a := true;
if a then "true" else "false" end
);
It is important to keep in mind that, in the case of linear code, the last line always determines the type and value returned. In this example, b will be equal to 10:
var b := (
var a := true;
if a then "true" else "false" end;
10
);

Methods

Methods are functions that take one or more parameters and return a value. Both the parameters and the return value are predefined.
Some methods can have multiple parameter configurations:
date(year, month, day) Returns a date value.
date(myTimeValue) Converts a given time-related value to a date value. If the value is a number, it represents the Unix time in milliseconds.
Refer to the official Ninox documentation for a complete and their .

Instructions

var, if then else, for, switch, select where, etc., are instructions.
Unlike methods, the return types of instructions depend on the code they contain. For example, the following code will return an array of numbers [1, 2]:
for i in range(1,3) do
i;
end;

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.