实现string2Int函数第⼀种,使⽤正则表达式实现。
function string2Int(str){
var num = str.match(/^((\-|\+)?(\d+))/);
if(!num){
return NaN;
}
return +num[0];
}
第⼆种,使⽤map⽅式实现。
function string2Int(str){
var status = true;
var num = '';
Array.prototype.map.call(str, function(v, i){
if(!status){
return;
}
if((i == 0 && (v === '-' || v === '+')) || (Number(v) === Number(v))){
num += v;
}else{
status = false;
return;
}
})
if(num === '-' || num === '+'){
return NaN;
int函数啥意思}else{
return Number(num)
}
}
第三种,使⽤reduce⽅式实现。
function string2Int(str){
var status = true;
var num = duce.call(str, function(total, v, i){
if(!((total === '-' || total === '+') && i === 1)){
if(Number(total) !== Number(total)){
return NaN;
}
}
if(Number(v) === Number(v) && status){
return total + v;
}else{
status = false;
return total;
}
});
return Number(num);
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论