我应该在 javascript 中的 parseFloat() 之前使用 toString()
Should I toString() before I parseFloat() in javascript
我的项目中有一个值需要 parseFloat()。诀窍在于该值可能是 null、int 或字符串,但它始终是数字。我的问题是,最好的做法是在 parseFloat() 之前 toString() 我的值。
.例如:
var num = null;
num = parseFloat(num.toString())
这是正确的,还是我应该这样做?:
var num = null;
num = parseFloat(num)
Null 没有 toString() 方法。
var num = null;
//....
// operate on num
//....
if (!num) {
num = parseFloat(0);
} else {
num = parseFloat(num);
}
如果 num.toString()
生成的字符串中的第一个非空格字符不是数字文字的一部分,parseFloat()
将 return NaN。如果您不想在数据中使用 NaN 值,则必须对此进行检查。
Javascript 会自动将任何数字转换为字符串,因此 toString() 不是必需的。您应该知道,如果 num 为空,则 NaN 字符串为 return.
According to the ECMAScript 5.1 specification, parseFloat()
implicitly calls the internal function ToString()
on its argument before processing it. The said function properly handles values such as undefined
or null
.
不,您不必自己调用 toString()
,转换由 parseFloat()
隐含,它涵盖更广泛的值范围(toString()
不适用于变量某些类型的,例如 null
).
我的项目中有一个值需要 parseFloat()。诀窍在于该值可能是 null、int 或字符串,但它始终是数字。我的问题是,最好的做法是在 parseFloat() 之前 toString() 我的值。
.例如:
var num = null;
num = parseFloat(num.toString())
这是正确的,还是我应该这样做?:
var num = null;
num = parseFloat(num)
Null 没有 toString() 方法。
var num = null;
//....
// operate on num
//....
if (!num) {
num = parseFloat(0);
} else {
num = parseFloat(num);
}
如果 num.toString()
生成的字符串中的第一个非空格字符不是数字文字的一部分,parseFloat()
将 return NaN。如果您不想在数据中使用 NaN 值,则必须对此进行检查。
Javascript 会自动将任何数字转换为字符串,因此 toString() 不是必需的。您应该知道,如果 num 为空,则 NaN 字符串为 return.
According to the ECMAScript 5.1 specification, parseFloat()
implicitly calls the internal function ToString()
on its argument before processing it. The said function properly handles values such as undefined
or null
.
不,您不必自己调用 toString()
,转换由 parseFloat()
隐含,它涵盖更广泛的值范围(toString()
不适用于变量某些类型的,例如 null
).