function sign
sign(x: number): number

Computes the sign of a number.

Computes the sign of each element in a number, array, or matrix. Returns 1 for positive numbers, -1 for negative numbers, and 0 for zero.

Examples

Sign of a single number

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(sign(-0.5), -1);

Sign of a positive number

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(sign(42), 1);

Sign of zero

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(sign(0), 0);

Sign with special values

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(sign(Infinity), 1);
assertEquals(sign(-Infinity), -1);

Sign with very small numbers

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(sign(0.000001), 1);
assertEquals(sign(-0.000001), -1);

Using with arrayfun for arrays

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(arrayfun([5, 0, -3], sign), [1, 0, -1]);

Using with arrayfun for matrices

import { assertEquals } from "jsr:@std/assert";
import { arrayfun } from "../../index.ts";

assertEquals(arrayfun([[2, -1], [0, 4]], sign), [[1, -1], [0, 1]]);

Parameters

x: number

The input value(s).

Return Type

number

The sign of the input value(s).

Throws

If no arguments are provided.