Mai visto il metodo replace() con quattro parametri... mi pare un'invenzione un tantino fantasiosa e comunque non hai bisogno di cambiare il punto in punto

Prova e medita: (ricorda che false vuol dire che e' numerico)

alert(isNaN('1234.56'))
alert(isNaN('1234,56'))
alert(isNaN('1234.56'.replace(',','.')))
alert(isNaN('1234,56'.replace(',','.')))

ciao