将值转换为十进制的Javascript映射函数

将值转换为十进制的Javascript映射函数,javascript,jquery,Javascript,Jquery,我有一个这样的数组 var elements=[5614,6619,7220,7320,7830,8220,0111,0112,0113,0142,0149] 我正在将每个元素转换为字符串,以便与jquery自动完成一起使用。 我正在使用.map函数来实现这一点 elements = elements.map(String); 输出为 ["5614", "6619", "7220", "7320", "7830", "8220", "73", "74", "75", "98", "149"]

我有一个这样的数组

var elements=[5614,6619,7220,7320,7830,8220,0111,0112,0113,0142,0149]
我正在将每个元素转换为字符串,以便与jquery自动完成一起使用。 我正在使用.map函数来实现这一点

elements = elements.map(String);
输出为

["5614", "6619", "7220", "7320", "7830", "8220", "73", "74", "75", "98", "149"]
函数将所有这些值作为
八进制值
,并将它们转换为
十进制值

我不想进行此对话,也希望保留前导零,我如何才能做到这一点,请帮助

函数将011011301301142所有这些值作为八进制值,并将它们转换为十进制值

这不是函数的作用,而是:

var elements=[5614,6619,7220,7320,7830,8220,0111,0112,0113,0142,0149]
在松散模式下,如果以
0
开头的数字后跟一系列八进制数字,则该数字为八进制。这就是为什么
010==8
是正确的:


console.log(010==8);//true
您不能在
数字类型变量上保留前导零。这不是因为字符串转换,而是因为您使用前导零定义数值,因为正如您所指出的,如果您的输入数据是数字
0111
,那么像
0111
这样写的数字是八进制表示法,然后你将有一个该死的困难时间“转换”到字符串“0111”`。。。由于您使用
var elements=
声明了“像这样的数组”,因此我建议您编辑代码以删除前导的zerosJavaScript不保留数字的基数。一个文本
011
将在IEEE 754内部表示为
9
,就是这样。@greentec做的正是OP已经做的。哇。教育。谢谢T.J.克劳德