我正在將CSV文件轉換爲本地二維數組。我想知道是否有更好的方法將字符串轉換爲float/int,而不是使用正則表達式後跟parseFloat()/ parseInt。在JavaScript中使用parseFloat()或parseInt()和正則表達式(轉換CSV文件)
想法/建議?
// numex() - checkes to see if the string (str) is a number
// returns number.valid (true||false) and number.value = (float||int||string)
numex = function(str){
number = {};
number.valid = false;
number.value = str;
// if we see a number then convert it to a floating point or integer
if((number.value.search(/[^0-9^\.^\$^\%^\-^\"^,^ ]+/) < 0) && str.length > 0) {
number.valid = true;
number.value = str.replace(/[^\-^0-9^\.]+/g, ''); // TODO add % coversion code for example if we see a 10% covert it to .1
if(number.value.search(/[\.]/) >= 0) {
number.value = parseFloat(number.value); // replace floating point
} else {
number.value = parseInt(number.value); // replace integers
}
}
return number; // number.valid = true or false;
}
var num = numex("1.101");
alert(num.value);
如果(isNaN(值)||值== 「」){返回海峽;}其他{返回false; }; – htmlfarmer 2013-05-28 03:12:41