我认为这是一个简单的逻辑检查。在我的代码中
$scope.seatMap.PlaneTypeCode = "175"
但是,当我设置
$scope.seatMap.PlaneTypeCode === "175" //my debugger returns <b>false </b>
parseInt($scope.seatMap.PlaneTypeCode,10) ===175 // equals 17
我在基数上添加了几个零,但这没有任何帮助。
我不知道如何进行比较检查。对此的任何见解将不胜感激。
这是我完整的 if 语句
if (parseInt(col.name,10) ===4 && parseInt($scope.seatMap.PlaneTypeCode,10) ===175 && $scope.TripSummary) {
col.available = false;
}
*****更改了我对此的回复
if (parseInt(col.name,10) ===4 && $scope.seatMap.PlaneTypeCode ==="175" && $scope.TripSummary) {
col.available = false;
} // still getting false
最佳答案
=== 是最佳实践,您应该使用它。查看@Joyson 提供的引用
parseInt 中不需要 ,10,因为它是默认值。
var PlaneTypeCode = "175";
if (parseInt(PlaneTypeCode) === 175) {
console.log('equal');
}
如果 PlaneTypeCode 是一个代码并且可以包含数字以外的任何内容,则更好的比较是:
if (PlaneTypeCode === "175")
关于javascript - 无法使用字符串检查相同的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38734822/