给定一个数字的字符串表示,如何在TypeScript中将其转换为数字类型?

var numberString: string = "1234";
var numberValue: number = /* what should I do with `numberString`? */;

当前回答

Typescript中有parseInt()、parseFloat()和Number()等内置函数,您可以使用它们。

其他回答

有很多人在转换数据类型时遇到了问题。在离子编程的情况下,转换数据类型很难解决,因为这种语言是新的,这里我将详细说明用户如何将数据离子类型转换为字符串数据类型整数。

在诸如java、php、c、c++等编程语言中。。。所有这些都可以轻松地移动数据,然后在ionic中也可以为我们创建数据转换,这也是一种简单的方式,尤其是在其他编程语言中。

this.mPosition = parseInt("");

就像在JavaScript中一样,您可以使用parseInt或parseFloat函数,或者简单地使用一元+运算符:

var x = "32";
var y: number = +x;

所有提到的技术都将具有正确的类型,并将正确解析简单的十进制整数字符串(如“123”),但对于其他可能的情况(如“123.45”)和角点情况(如null),它们的行为会有所不同。

此答案中的表格

如果你只是在谈论类型,就像其他人所说的那样,parseInt()等将返回正确的类型。此外,如果由于任何原因,该值可能是数字或字符串,并且您不想调用parseInt(),则typeof表达式也将强制转换为正确的类型:

function f(value:number|string){
  if(typeof value==='number'){
   // value : number
  }else {
   // value : string
  }
}

在解释Ryan所说的内容时,TypeScript概括了JavaScript的习惯用法。

var n = +"1"; // the unary + converts to number
var b = !!"2"; // the !! converts truthy to true, and falsy to false
var s = ""+3; // the ""+ converts to string via toString()

JavaScript类型转换中所有有趣的深入细节。

您可以遵循以下任一方式。

var str = '54';

var num = +str; //easy way by using + operator
var num = parseInt(str); //by using the parseInt operation