这篇文章主要讲解了“JavaScript的parseInt()使用实例代码分析”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript的parseInt()使用实例代码分析”吧!
/**
* @param {string} str
* @return {number}
*/
var myAtoi = function(str) {
str = str.trim();
//截取字符串第一个字符
var firstChar = str.charAt(),res = '',regSymbol = /^[\-\+]{1}/,regNumber = /^[0-9]{1}/;
if(!regSymbol.test(firstChar) && !regNumber.test(firstChar)){
return 0;
}
//第一个字符为+或者-
if(regSymbol.test(firstChar)){
var sliceStr = str.slice(1,str.length);
for(var i=0;i<sliceStr.length;i++){
if(regNumber.test(sliceStr.charAt(i))){
res += sliceStr.charAt(i);
}else{
break;
}
}
(res.length) ? res = parseInt(firstChar + res) : res = 0;
if(firstChar == '-' && res < Math.pow(-2,31)){
res = Math.pow(-2,31);
}
if(firstChar == '+' && res > Math.pow(2,31) - 1){
res = Math.pow(2,31) - 1;
}
return res;
}
//第一个字符为数字
if(regNumber.test(firstChar)){
var sliceStr = str;
for(var i=0;i<sliceStr.length;i++){
if(regNumber.test(sliceStr.charAt(i))){
res += sliceStr.charAt(i);
}else{
break;
}
}
if(parseInt(res) > Math.pow(2,31) - 1){
res = Math.pow(2,31) - 1;
}
return res;
}
};
/**
* @param {string} str
* @return {number}
*/
var myAtoi = function(str) {
const number = parseInt(str, 10);
if(isNaN(number)) {
return 0;
} else if (number < Math.pow(-2, 31) || number > Math.pow(2, 31) - 1) {
return number < Math.pow(-2, 31) ? Math.pow(-2, 31) : Math.pow(2, 31) - 1;
} else {
return number;
}
};
通过对比,我们了解到javascript中的parseInt()已经做了截取空字符串、首字母判断、number类型结果返回等一系列操作。
感谢各位的阅读,以上就是“JavaScript的parseInt()使用实例代码分析”的内容了,经过本文的学习后,相信大家对JavaScript的parseInt()使用实例代码分析这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://www.zhuxianfei.com/jishu/js/48741.html