【问题标题】:Convert numeric string to number in angular 2将数字字符串转换为角度 2 中的数字
【发布时间】:2017-08-21 11:56:28
【问题描述】:

我想比较 angular 2 表达式。我从我的数据库中获得了数字字符串中的数据数组,我需要先将其转换为数字,然后再使用 ngClass 设置样式。我怎样才能转换这种类型。有什么想法吗?

  <td [ngClass]= "{'positive': gbh.Last > 0, 'negative': gbh.Last < 0}"> {{gbh.Last}} </td>

【问题讨论】:

标签: javascript angular


【解决方案1】:

这个答案是打字稿方式: so answer

Number('1234') // 1234
Number('9BX9') // NaN

另一个答案看起来是针对 int 而不是 numbers。最好使用加号。

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

参考answer

【讨论】:

  • 是的,这些都是在 JS 和 TypeScript 中转换为数字的有效方法,但是问题是关于在 Angular 模板 HTML 中的表达式中转换为数字 。你的回答没有提到这一点。值得注意的是,Angular 模板的表达式语法非常有限,不允许使用 Numbervar 等符号。
  • @jcairney Numbervar 显然在模板中不起作用。但是 + 在模板中工作..
【解决方案2】:

据我所知,您无法在 Angular 表达式中将数字字符串转换为数字。

最佳做法是在控制器中定义一个方法,该方法将使用“parseInt”解决您的表达式

  function isPositive (x: String, y: number): boolean {
      return (parseInt(x, 10) < y);
  }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-29
    • 2019-11-12
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    • 1970-01-01
    • 2018-07-20
    • 1970-01-01
    相关资源
    最近更新 更多