【发布时间】:2018-08-18 08:31:07
【问题描述】:
我正在构建一个随机生成器,用户需要输入最大和最小数字以在该数字之间生成随机数。所以应用程序会在两种情况下返回错误:
- 如果任一数字为负值
- 如果最大数量小于最小数量
这是我显示方法生成编号的代码:
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。
谁能解释为什么会这样?
更新
作为@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