在字符串上调用toString

时间:2014-02-13 12:04:39

标签: javascript node.js v8

在我的Node.js应用程序中,我有一个数据库层,在输入参数上调用toString,需要以字符串形式传递给数据库(例如,数字)。我将参数传递给库的地方,我也应该调用toString吗?一方面,我喜欢明确。另一方面,我在已经是字符串的东西上调用toString。如果没有必要,我宁愿保存CPU周期。

在字符串上调用toString的成本是多少?

1 个答案:

答案 0 :(得分:6)

  

在字符串上调用toString有多贵?

在任何体面的引擎(和V8是一个不错的引擎),它应该几乎免费。但它仍然必须通过原型链进行属性查找,以确保有人没有覆盖它。所以它不会免费,只是便宜。

  

......我应该在那里调用toString吗?

这是主观的。我跟@dystroy:没有必要。此外,最好尽可能为API提供尽可能多的信息,以防它们在将来的版本中增强它。除非API要求你给它字符串,否则我会通过在传递params之前不转换为字符串来保存信息。