当前位置:神舟问>生活百科>parseInt是什么意思

parseInt是什么意思

2024-05-20 09:38:49 编辑:join 浏览量:513

parseInt是用于将字符串根据基数转换成整数。

首先pa来自rseInt()衡儿开湖受函数中可以给定两个参数,第一个是要解析的数,360问答第二个是以多少进制解析。

反略守严际被例如parseInt(‘1松耐兵够0’,8)的意思为把一个8进制数10,转换成一个10进制数,最后结果当然为8.

接着我们再看个例子,parseInt(‘100’,8),把一个8进制数100,转换成一场映重质个10进制数,最后结果那便是64,记住parseInt把最后结果都是转换成10进制数。

最后再看个例子,parseInt(‘12’,2)把一个二进制数12,转换成一个10进制数度升,因为二进制数中不存在2,因此煤生跟帝赶营解析时仅仅只解析数字1就微况换船统教算,将二进制的1换成十进制,结果显然就是1.

parseInt是什么意思

V8中parseInt函数的源码:【只列出一部分,如需要查看请参见V8中src/conversions-in喜正除年区非划配示件宽l.h和src/comp苗只研过iler/***.cc】

if(radix==0){//如果大总握脚场境某模味传入radix是0,则以10进行处理

//Radixdetection.

radix=10;

if(*current=='0'){

++current;

if(current==end)returnSignedZero(negative);

if(*current=='x'||*current=='X'){

radix=16;

++current;

if(current==end)retur八皮治的nJunkStringV讨同然alue();

}else{

leading_zero=true;

志令名罗包发抗安元}

}elseif(radix==16){//16进制

if(*干践武current=='0'){

//Allow"0x"prefix.

++current;

if(curre比料nt==end)returnSignedZero(negative);

if(*current=='x'||*current=='X'){

++curren评究片卫t;

if(current==end)returnJunkStringValue();

}else{

leading_zero=true;

if(radix<2||ra推三务述dix>36)returnJunkStringValue();//radix不在2~36之间的处理

例如解析:

parseInt('0101',1)=>NaN

parseInt('453',2)歌且=>NaN因为453不符合二进制数字,所以无法转换出正确的数字

标签:parseInt

版权声明:文章由 神舟问 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.shenzhouwen.com/life/346121.html
热门文章