覆盖字符串true和布尔值true的Javascript
我有以下几点覆盖字符串true和布尔值true的Javascript,javascript,angularjs,Javascript,Angularjs,我有以下几点 $scope.user.infowindow.enable = ($scope.user.infowindow.enable=="true") ? true : false; 这将检查$scope.user.infowindow.enable是否为“true”,如果为,则将其转换为true否则false 有时,$scope.user.infowindow.enable可以是true而不是字符串,最好是将其写入此脚本中,以便最终将$scope.user.infowindow.ena
$scope.user.infowindow.enable = ($scope.user.infowindow.enable=="true") ? true : false;
这将检查$scope.user.infowindow.enable
是否为“true”
,如果为,则将其转换为true
否则false
有时,$scope.user.infowindow.enable
可以是true
而不是字符串,最好是将其写入此脚本中,以便最终将$scope.user.infowindow.enable
设置为true
或false
检查是否为字符串
谢谢使用或“| |”语句
$scope.user.infowindow.enable = ($scope.user.infowindow.enable==="true" || $scope.user.infowindow.enable===true) ? true : false;
或者使用“==”,明确地处理不同的情况:
$scope.user.infowindow.enable =
($scope.user.infowindow.enable === "true" ||
$scope.user.infowindow.enable === true) ? true : false;
尽管我更愿意理解为什么单个值“有时”可以是字符串,“有时”可以是布尔值。这可能是您的真正问题…您可以尝试以下方法:
$scope.user.infowindow.enable = (true === $scope.user.infowindow.enable || 'true' === $scope.user.infowindow.enable);
当
$scope.user.infowindow.enable
为“false”
$scope.user.infowindow.enable为false时会发生什么情况一个很好的参考: