--- title: Math.sign() slug: Web/JavaScript/Reference/Global_Objects/Math/sign tags: - Experimental - Expérimental(2) - JavaScript - Math - Method - Reference - Référence(2) translation_of: Web/JavaScript/Reference/Global_Objects/Math/sign ---
{{JSRef("Global_Objects", "Math")}}

Сводка

Метод Math.sign() возвращает знак числа, указывающий на то, является ли число отрицательным, положительным или нулём.

Синтаксис

Math.sign(x)

Параметры

x
Число.

Описание

Поскольку метод sign() является статическим методом объекта Math, вы всегда должны использовать его как Math.sign(), а не пытаться вызывать метод на созданном экземпляре объекта Math (поскольку объект Math не является конструктором).

Метод может вернуть одно из пяти значений: 1, -1, 0, -0 и NaN, которые представляют, соответственно «положительное число», «отрицательное число», «положительный ноль», «отрицательный ноль» и {{jsxref("NaN")}}.

Обратите внимание, что аргумент, переданный в этот метод, будет неявно преобразован в число.

Примеры

Пример: использование метода Math.sign()

Math.sign(3);     //  1
Math.sign(-3);    // -1
Math.sign('-3');  // -1
Math.sign(0);     //  0
Math.sign(-0);    // -0
Math.sign(NaN);   // NaN
Math.sign('foo'); // NaN
Math.sign();      // NaN

Полифил

Math.sign = Math.sign || function(x) {
  x = +x; // преобразуем в число
  if (x === 0 || isNaN(x)) {
    return x;
  }
  return x > 0 ? 1 : -1;
}

Спецификации

Спецификация Статус Комментарии
{{SpecName('ES6', '#sec-math.sign', 'Math.sign')}} {{Spec2('ES6')}} Изначальное определение.

Совместимость с браузерами

{{CompatibilityTable}}
Возможность Chrome Firefox (Gecko) Internet Explorer Opera Safari
Базовая поддержка {{CompatChrome("38")}} {{CompatGeckoDesktop("25")}} {{CompatNo}} {{CompatOpera("25")}} {{CompatNo}}
Возможность Android Chrome для Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Базовая поддержка {{CompatNo}} {{CompatNo}} {{CompatGeckoMobile("25")}} {{CompatNo}} {{CompatNo}} {{CompatNo}}

Смотрите также