首页 > 解决方案 > Javascript 或 Angular 中“[+”的含义

问题描述

我好奇。

[+这段代码中的含义是什么:

ngOnInit() {
  this.route.paramMap.subscribe(params => {
    this.product = products[+params.get('productId')];
  });
}

标签: javascriptangulartypescript

解决方案


将字符串更改为整数/数字。

例如:

如果你有“60”。这是一个字符串,但如果你添加+它的前面。现在这是一个数字:60

在您的代码中,params.get('productId')返回字符串,您可能需要它作为数字。这是简写​​,但它只将用字符串包裹的数字转换为数字 - 而不是“一”转换为 1。

另外,[+. 第一个括号是左括号,用于根据对象的索引或元素/属性访问数组的元素。例如,products[5].

这也称为Unary plus (+)

+false  // 0
+‘123’  // 123
+0xBABE // 47806 (Hexadecimal)
+null   // 0
+function(val) {return val } // NaN

如果您有兴趣阅读更多内容,请参阅详细文章:

https://medium.com/@nikjohn/cast-to-number-in-javascript-using-the-unary-operator-f4ca67c792ce


推荐阅读