我有两个范围$scope.job
和$scope.jobs
我有var job;
如果$scope.job
为undefined
我希望$scope.jobs
在job
下工作,那么var job = $scope.jobs
会$scope.job
,但如果定义if ( $scope.job ) {
var job = $scope.job;
} else {
var job = $scope.jobs;
}
我我也希望将它写入该变量。
{{1}}
但是用简写
答案 0 :(得分:1)
我想留下简短的评论,但现在我明白如果我解释会更好。
var job = $scope.job || $scope.jobs;
undefined == false; // prints true
这就是它的运作方式。
If $scope.job == undefined == false || $scope.jobs == {...} == true.
如果作业未定义 - 它将为false,因此or
操作数返回true值。
答案 1 :(得分:0)
所以,如果我理解你的意思:
if ($scope.job)
var job = $scope.job;
else
{
var job = $scope.jobs;
$scope.job = $scope.jobs;
}
嗯,那么简写:
var job = $scope.job = $scope.job || $scope.jobs;
答案 2 :(得分:0)
或者您可以使用三元运算符
var job = $scope.job ? $scope.job : $scope.jobs
或
var job = $scope.job == undefined ? $scope.job : $scope.jobs