删除特殊字符javascript后的未定义数字

时间:2017-06-07 11:08:48

标签: javascript

字符串 - 255,012美元 我只需要255012号码 我使用方法getNumbers(str)删除文本USD和,或任何点。

函数正常,但函数的返回值为NAN。

我正在使用这种方法

function getNumbers(str)
{
  return parseInt(str.replace(/[^0-9]/g, "")); // it will get only numbers.
}

每当我使用上述方法时

 var piInput = getNumbers( 1,50.00 );

变量中的返回值piInput是未定义的类型为什么会这样?

我的jsfiddle链接 https://jsfiddle.net/c0x7wko3/

不确定为什么没有显示结果。

我的方法检测变量类型。

   function getTypeofVariable( msg ,  myvar ) {

    if ( typeof myvar === 'string' )
    {
        alert(msg + myvar + " is STRING type vairable " );
    }
    if ( typeof myvar === 'number' )
    {
        alert(msg + myvar + " is number type vairable " );
    }
    if ( typeof myvar === 'boolean' )
    {
        alert(msg + myvar + " is boolean type vairable " );
    }
        if ( typeof myvar === 'symbol' )
    {
        alert(msg + myvar + " is symbol type vairable " );
    }
        if ( typeof myvar === 'object' )
    {
        alert(msg + myvar + " is object type vairable " );
    }
        if ( typeof myvar === 'undefined' )
    {
        alert(msg + myvar + " is undefined type vairable " );
    }

    if ( typeof myvar === 'number' )
    {
        alert(msg + myvar + " is number type vairable " );
    }
}

1 个答案:

答案 0 :(得分:1)

将字符串传递给getNumbers,还有一些语法错误,请查看:

function getNumbers(str)
{
    return (str.replace(/[^0-9]/g, "")); 
}

var piInput = getNumbers( "1,50.00" );
alert(piInput);