(变量).toFixed(2)和+(变量).toFixed(2)之间的区别是什么?

时间:2016-09-14 20:04:27

标签: javascript

我想知道

之间的主要区别是什么
(2.3444).toFixed(2) ==> 2.34

另外

+(2.3444).toFixed(2) ==> 2.34

两者都给出了相同的结果。当我需要使用那个+符号时,任何人都可以解释吗?

1 个答案:

答案 0 :(得分:1)

第一个给你一个字符串,第二个给你一个(现在被截断的)数字。



import org.apache.spark.mllib.linalg.distributed.IndexedRow

new CoordinateMatrix(
  rdd.map{
    case ((x, y), cov) => MatrixEntry(x, y, cov)
  }
).toIndexedRowMatrix.rows.map { case IndexedRow(i, vs) => (i, vs.toSparse) }




一元加号会尝试convert it's operand to a number

这个问题的原因是因为第一个将导致字符串连接,如果你"添加"一个数字。



var x = 2.344;
var a = x.toFixed(2);
var b = +x.toFixed(2);
console.log(a, typeof a);
console.log(b, typeof b);