阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS Math.sign()

      Math.sign() 函数返回一个数字的符号, 指示数字是正数,负数还是零。

      语法

      Math.sign(x);
      

      参数

      x

      任意数字.

      描述

      因为 signMath 的一个静态方法,所以你应该使用 Math.sign() ,而不是作为你创建的一个Math对象的一种方法 (Math不是一个构造函数)。

      而不是作为您创建的Math对象的一种方法(Math不是构造函数)。

      此函数共有5种返回值, 分别是 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
      
      

      Polyfill

      function sign(x) {
          x = +x ;// convert to a number
          if (x === 0 || isNaN(x))
              return x;
          return x > 0 ? 1 : -1;
      }
      
      if (!Math.sign) {
        Math.sign = function(x) {
          // If x is NaN, the result is NaN.
          // If x is -0, the result is -0.
          // If x is +0, the result is +0.
          // If x is negative and not -0, the result is -1.
          // If x is positive and not +0, the result is +1.
          x = +x; // convert to a number
          if (x === 0 || isNaN(x)) {
            return Number(x);
          }
          return x > 0 ? 1 : -1;
        };
      }
      

      规范

      SpecificationStatusComment
      ECMAScript 2015 (6th Edition, ECMA-262)Math.signStandardInitial definition.

      相关链接

      目录
      目录