如何在Angular 2组件内将数字转换为字符串:

14

在组件内部我有

export class AppComponent implements OnInit {


public errorMsg :number =10 ;

public doughnutChartOptions: any = {
 cutoutPercentage: 85,
  elements: {
    center: {
      text: this.errorMsg + ' Energy produced in the Energy',
      fontColor: '#fff',
      fontFamily: "'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",
      fontSize: 24,
      fontStyle: 'normal'
    }
  }
};
  text: this.errorMsg + ' some thing',

这是一个可接受属性的字符串,所以在这里我必须将数字转换为字符串。如何在Angular4、TypeScript 2.5中实现呢?


1
你是在说你的操作出现了错误吗?如果是,那么是什么错误? - mast3rd3mon
2
TypeScript与JS具有相同的类型强制转换,因此在字符串上下文中使用数字时,它们会自动转换为字符串。 - Günter Zöchbauer
我已经关闭了这个主题,从Gunter和Saurabh那里获得了清晰的想法,感谢宝贵的评论。 - Mohamed Sahir
5个回答

20
整数转字符串就像调用.toString()一样简单。
正如@GünterZöchbauer所说,TypeScript具有与JS相同的类型强制转换,因此在字符串上下文中使用数字时,它们会自动转换为字符串。
因此,与Javascript一样,不会出现任何问题,您可以将数字用作字符串。
如果您想这样做:

const num = 3;//number
const stringForm = num.toString();
console.log(stringForm);


4

请尝试

text:  `${this.errorMsg} Energy produced in the Energy`,

注意:在获取值时,请使用“`”(反引号),而不是“'”(撇号)。


4

你可以使用 ''+你的数字

let num:number=3;
let numTxt:string=''+number;

1
它将自动转换为字符串,例如:
class myClass{
    private myNum: number = 10;
    private myName: string = "Name Surname";
    
    onInit() {
        console.log(this.myName+this.myNum);    
    }
}

当转译时,它将被转换成这些行

var myClass = /** @class */ (function () {
    function myClass() {
        this.myNum = 10;
        this.myName = "Name Surname";
    }
    myClass.prototype.onInit = function () {
        console.log(this.myName + this.myNum);
    };
    return myClass;
}());

您可以在TypeScript网站的playground部分进行检查,

演示


0

let num = 3;//number
let stringForm = num.toString();
console.log(stringForm);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接