Python与JavaScript判断正负数及整数的方法详解

小岛来信
小岛来信
发布时间:2026-10-13 | 5人浏览过
原创

本文介绍如何在Python和JavaScript中判断数值的正负性及是否为整数。Python通过if条件判断正数、负数或零;JavaScript ES6提供Number.isInteger()精确判断整数,Math.sign()返回正负号。同时兼容ES5实现方案,包括Math.round取整与取余运算,适用于不同环境下的数值类型检测。

Python判断正负数核心代码

直接展示核心代码实现,避免冗长解释。


a1 = raw_input("please input a number")
a = int(a1)
if(a!=0):
if(a > 0):
print '这是正数'
if(a < 0 ):
print '这是负数'
else:
print 'the number is equal to 0'

数值类型判断概述

补充内容:如何判断一个数值属于正数、负数、零或整数。

在阅读阮一峰老师的《ES6标准入门》时,注意到ES6引入了两个用于数值判断的新方法。

这些方法专门用于精确判断数值的类型与符号。

JavaScript判断整数:Number.isInteger()

一、判断整数:Number.isInteger()方法

Number.isInteger()首先检查值是否为number类型,若非number类型则直接返回false;

若为number类型,则进一步判断其是否为整数。


Number.isInteger(25); //true
Number.isInteger(25.222); //false
Number.isInteger('25'); // false
Number.isInteger('25.222'); //false
Number.isInteger('foo'); // false

ES5判断整数的两种实现

在ES5环境中判断正数同样简单,以下是两种常见实现方式:

1、利用Math.round()进行四舍五入,若结果与原值相等,则为整数。


function numberIsInteger(n){
  if(!Number.isInteger){
    return typeof n === 'number' && Math.round(n) === n;
  }
  return n;
}

2、利用取余运算,判断是否有余数。


function numberIsInteger(n){
  if(!Number.isInteger){
    return typeof n === 'number' && n % 1 === 0;
  }
  return Number.isInteger(n);
}

JavaScript判断正负号:Math.sign()

二、判断正数、负数或零:Math.sign()方法

该方法返回以下五种结果之一:

+1 表示正数

-1 表示负数

0 表示正零

-0 表示负零

NaN 表示非数值或其他类型


console.log(Math.sign(-5)); //-1
console.log(Math.sign(-5.222)); // -1
console.log(Math.sign(555)); // 1
console.log(Math.sign(0)); // 0
console.log(Math.sign(-0)); // -0
console.log(Math.sign('foo')); // NaN

ES5兼容Math.sign的实现

ES5环境下的兼容实现方案:


Math.sign = Math.sign || function (n){
  n = +n;
  if(n === 0 || isNaN(n)){
    return n;
  }
  return x > 0 ? 1 : -1;
}

以上关于Python判断正负数及JavaScript数值判断的方法分享完毕,希望能为读者提供参考,欢迎支持本站更多内容。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表