Это экспериментальная технология, часть предложения Harmony (ECMAScript 6).
Поскольку спецификация этой технологии ещё не стабилизировалась, проверьте таблицу совместимости её использования в различных браузерах. Также обратите внимание, что синтаксис и поведение экспериментальной технологии могут быть изменены в будущих версиях браузеров в соответствии с изменениями в спецификации.
Сводка
Метод Math.sign()
возвращает знак числа, указывающий на то, является ли число отрицательным, положительным или нулём.
Синтаксис
Math.sign(x)
Параметры
x
- Число.
Описание
Поскольку метод sign()
является статическим методом объекта Math
, вы всегда должны использовать его как Math.sign()
, а не пытаться вызывать метод на созданном экземпляре объекта Math
(поскольку объект Math
не является конструктором).
Метод может вернуть одно из пяти значений: 1
, -1
, 0
, -0
и NaN
, которые представляют, соответственно «положительное число», «отрицательное число», «положительный ноль», «отрицательный ноль» и 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; }
Спецификации
Спецификация | Статус | Комментарии |
---|---|---|
ECMAScript 6 (ECMA-262) Определение 'Math.sign' в этой спецификации. |
Кандидат в рекомендации | Изначальное определение. |
Совместимость с браузерами
Возможность | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Базовая поддержка | 38 | 25 (25) | Нет | 25 | Нет |
Возможность | Android | Chrome для Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Базовая поддержка | Нет | Нет | 25.0 (25) | Нет | Нет | Нет |