在javascript中,如何将-ve值转换为前面不带outsign的值?

在javascript中,如何将-ve值转换为前面不带outsign的值?,javascript,Javascript,我将-ve和无符号整数存储在数据库中,以描述某个特定参考点的I.e.-ve值之前或I.e.无符号之后。 例如,在我的网页上,我会在离职日期前5天显示-5。如何将-5转换为5。虽然有一种方法可以得到-5的子字符串,但这是一种幼稚的方法。有更好的方法吗?您可以简单地使用它返回一个数字的绝对值 Math.abs(-5) 更新:实际上我错过了。即使是字符串,math.abs()也会自动转换为数字 Math.abs(-5) //returns 5 Math.abs('-5') //returns 5

我将-ve和无符号整数存储在数据库中,以描述某个特定参考点的I.e.-ve值之前或I.e.无符号之后。 例如,在我的网页上,我会在离职日期前5天显示-5。如何将-5转换为5。虽然有一种方法可以得到-5的子字符串,但这是一种幼稚的方法。有更好的方法吗?

您可以简单地使用它返回一个数字的
绝对值

Math.abs(-5)
更新:实际上我错过了。即使是字符串,
math.abs()
也会自动转换为数字

Math.abs(-5)   //returns 5
Math.abs('-5') //returns 5

您需要使用数学标题中的绝对函数

var num = -20;
num = Math.abs(num);

这将把数字转换为绝对值(即)正数。

请使用Math.abs(-16)只得到16。否则,您可以在函数集逻辑中创建一个返回正值的函数,如果输入参数为正值,则返回它,否则与-1相乘,然后返回(如果您不想使用Math.abs()这个预定义函数。有问题吗?

这是一个很好的解决方案。但是对于这种幼稚的方法,var stringFromNum=“'+numberVariable+'",这会导致字符串变量吗?只是好奇。实际上,你不能说OP的值是字符串还是数字。谁知道他是如何从数据库中获取数据的,以及他对数据做了什么。或者,
Math.abs
是解决这个问题的最佳方法。@FelixKling我提到了substring,因为OP提到了
一种方法是得到一个-5的子字符串,但这是一个简单的方法。
@Rishi如果是这样的话
var stringFromNum=“-5”;Math.abs(+stringFromNum);
在一个字符串变量前添加
+
将其转换为
number
数据类型我知道,我只是说你不能说“你不能使用子字符串”因为你不知道值是以什么形式存在的。我也很确定
Math.abs
会自动将参数转换为数字。注意:我没有找到解决方案,这就是为什么我在这里问这个问题的原因。这对你来说可能很幼稚或简单,但对我来说仍然是个问题。乘以-1,哦,这太简单了。很好的解决方案。