今天在工作中碰到了一个问题,要将字符串转换为数字,否则函数不能正常工作,
特地研究了下,写了2个函数,供大家参考,代码如下:
/**
* 将字符串转换为数字
* @param {Object} str
*/
function toNumber(str) {
if(isNaN(str)) {
throw new TypeError(str + "不能转换为数字!");
}
return Number(str);
/*
先调用isNaN判断能否转换为数字
true,不能转换为数字,抛出异常
false,能转换为数字,则进行转换并返回转换结果
*/
} /**
* 将字符串转换为数字
* @param {Object} str
*/
function _toNumber(str) {
var numValue = Number(str);
if(isNaN(numValue)) {
throw new TypeError(str + "转换为数字失败!");
}
return numValue;
/*
直接调用Number函数进行转换
转换成功,返回值numValue为数值,则返回这个数值
转换失败,返回值numValue为NaN,则抛出异常
* /
}