Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
覆盖字符串true和布尔值true的Javascript_Javascript_Angularjs - Fatal编程技术网

覆盖字符串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时会发生什么情况一个很好的参考: