【问题标题】:Angular typescript gives wrong boolean result - Ionic角度打字稿给出错误的布尔结果 - Ionic
【发布时间】:2018-08-18 08:31:07
【问题描述】:

我正在构建一个随机生成器,用户需要输入最大和最小数字以在该数字之间生成随机数。所以应用程序会在两种情况下返回错误:

  1. 如果任一数字为负值
  2. 如果最大数量小于最小数量

这是我显示方法生成编号的代码:

generateRandomNumber(max, min) {
console.log(max<min);
  if(max > min && min > 0){
    this.number = Math.floor(Math.random() * (max - min + 1)) + parseInt(min);
    this.err_compare = false;
    this.err_negative = false;
  }
  else if(max < 0 || min < 0){
    this.err_negative = true;
  }
  else if(max < min){
    this.err_compare = true;
  }

}

当我输入 max = 10 和 min = 1 时,它返回 false。但是当我更改 min =2 时,日志返回 true

Click Here to see the log

谁能解释为什么会这样?

更新

作为@Setu 先生的后续行动,我通过将数字直接插入函数并返回正确结果来测试自己,因此我认为输入中出现了问题。这是标记:

 <form #generator="ngForm">
  <ion-item>
    <ion-label for="max" floating>Maximum</ion-label>
    <ion-input type="number" [(ngModel)]="max" name="max" required></ion-input>
  </ion-item>
  <ion-item>
    <ion-label for="min" floating>Minimum</ion-label>
    <ion-input type="number" [(ngModel)]="min" name="min" required></ion-input>
  </ion-item>
  <br>
  <button default ion-button block [disabled]="!generator.valid" (click)="generateRandomNumber(max,min)">Generate</button>
 </form>

据我所见,它检测到好像我要输入了

20,21,22...

" 当我只输入什么时

2

【问题讨论】:

    标签: angular typescript ionic-framework


    【解决方案1】:

    我已经尝试过您的功能,但它返回了正确的答案。检查下面的控制台日志

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-29
      • 1970-01-01
      • 2017-10-21
      • 2013-08-16
      • 2016-03-25
      • 2013-08-21
      • 2018-10-18
      相关资源
      最近更新 更多