Javascript 使用JS从数千个地方获取数字

Javascript 使用JS从数千个地方获取数字,javascript,html,Javascript,Html,我想从左边取第二个号码 如果我有一个给定的字符串98765 如果我想得到9,我会: Math.floor(98765/10000); 如果我想获得8,那么执行以下操作是有意义的: Math.floor(98765/1000); 但是,;它返回98 你知道我怎样才能得到号码8?(可能为w/模数) --请记住,给定的数字是完全随机的它可以在0-1000000之间 var num = 98765; // Number var digit = Math.floor(

我想从左边取第二个号码

如果我有一个给定的字符串
98765

如果我想得到
9
,我会:

Math.floor(98765/10000);
如果我想获得
8
,那么执行以下操作是有意义的:

Math.floor(98765/1000);
但是,;它返回
98

你知道我怎样才能得到号码
8
?(可能为w/模数)

--请记住,给定的数字是完全随机的它可以在0-1000000之间

        var num = 98765; // Number

        var digit = Math.floor(num % 10),
            digitsValue,

            tens = Math.floor(num/10 % 10),
            tensValue,

            hundreds = Math.floor(num/100 % 10),
            hundredsValue,

            thousands = Math.floor(num/1000),
            thousandsValue,

            tenThousands = Math.floor(num/10000),
            tenThousandsValue,

            hundredThousands = Math.floor(num/100000),
            hundredThousandsValue,

            millions = Math.floor(num/1000000),
            millionsValue;

上面的代码很好,但如果
num
的长度为5,
thounandsvalue
返回
undefined
;但是,如果
num
的长度小于5,它将正确返回。

是否使用字符串?更容易的。您也可以将字符串转换回整数

var number = 98765;
var myEight = number.toString()[1];

编辑:

是否使用字符串?更容易的。您也可以将字符串转换回整数

var number = 98765;
var myEight = number.toString()[1];


编辑:

Math.floor((98765%10000)/1000)
Math.floor((98765%10000)/1000)
使用括号符号按索引访问怎么样?在Sam的回答下面,你说你正在查找每个位置?在你上面的问题中,你说你只是在寻找第二个。确切地告诉我们你希望完成什么。如果你想把数字分成每一个小数位,你仍然可以使用Sam的方法。我试图找到一个数字的位置值,一直到百万位。给定
12345678
(或任何其他任意但明确指定的输入)的特定输入,你希望得到什么特定输出?@blgt找到了答案。数学地板((数量%10000)/1000);使用括号表示法按索引访问如何?在下面Sam的回答中,您说您正在查找每个位置?在你上面的问题中,你说你只是在寻找第二个。确切地告诉我们你希望完成什么。如果你想把数字分成每一个小数位,你仍然可以使用Sam的方法。我试图找到一个数字的位置值,一直到百万位。给定
12345678
(或任何其他任意但明确指定的输入)的特定输入,你希望得到什么特定输出?@blgt找到了答案。数学地板((数量%10000)/1000);我忘了提到这个数字可能在0到9万亿之间。数学层(98765/1000);将适用于长度为4的数字,但不是5!这种技术适用于任何整数。编辑:我应该说,javascript变量可以容纳的任何整数如果将其转换为字符串,那么数字的大小根本不重要。他的方法总是只得到任意数字的第二个字符。我试图得到随机字符串的小数点。就像那些,十,百,千,万。我遇到了一个问题,当一个随机字符串(比如说“99999”)被给定时,千(千=Math.floor(num/1000);)返回“undefined”@Matthew如果你这样做的话,你也可以通过倒数得到第四位:
parseInt(number.toString().charAt(number.toString().length-4))
我忘了提到数字可能在0到9万亿之间。数学层(98765/1000);将适用于长度为4的数字,但不是5!这种技术适用于任何整数。编辑:我应该说,javascript变量可以容纳的任何整数如果将其转换为字符串,那么数字的大小根本不重要。他的方法总是只得到任意数字的第二个字符。我试图得到随机字符串的小数点。就像那些,十,百,千,万。我遇到了一个问题,当给出一个随机字符串(比如“99999”)时,千(千=Math.floor(num/1000);)返回“undefined”@Matthew如果你这样做的话,你也可以通过从末尾倒数得到第四位:
parseInt(number.toString().charAt(number.toString().length-4))
谢谢!这就是我一直在寻找的东西非常感谢。这就是我一直在寻找的东西