初始化Javascript号码的最佳方法是什么,知道默认值?
是否应该设置数字,例如:
var anInteger = 0;
var aDecimal = 0.4;
或
var anInteger = new Number(0);
var aDecimal = new Number(0.4);
我已经搜索过了,但是没有找到明确答案。
答案 0 :(得分:6)
您几乎应该始终使用第一个解决方案。这使得数字原始,而使用Number
构造函数会生成对象,Number
的实例,它更重。
处理对象而不是原始数字是危险的。例如:
new Number(4) === new Number(4)
是
false
Number类主要存在,因此您可以调用数字上的方法(例如toFixed
)但很少需要显式调用它,因为促销是自动的(例如1..toFixed(0)
为该操作创建一个临时Number
,该对象立即被删除。
答案 1 :(得分:1)
通常,您不必担心使用Number对象,因为浏览器会自动将数字文字转换为数字类的实例。我真的不知道为什么有人会使用它们。
建议使用你提到的第一种技术,即
var num = 1;
据我了解,添加new
对于此类任务来说是不必要的。
new Number( x )
这将创建一个新的包装器对象。我认为没有充分理由使用它。
Mozilla Documentations says Number
对象的主要用途是:
a)如果参数无法转换为Number
,例如NaN
。
每次发言var nice = new Number(1)
都没有真正的优势。