我有一個javascript函數如下:的Javascript「中的」功能引發錯誤控制檯
if (',' in mpttexclusion){
$scope.exclusion = $scope.mpttexclusion.split(',');
} else {
$scope.exclusion = $scope.mpttexclusion;
}
但是,當我檢查控制檯,我收到此錯誤:
TypeError: Cannot use 'in' operator to search for ',' in 175
at new ModalInstanceCtrl (http://127.0.0.1:8000/static/js/app.js:180:15)
at invoke (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:3704:17)
at Object.instantiate (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:3715:23)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:6766:28
at http://angular-ui.github.io/bootstrap/ui-bootstrap-tpls-0.10.0.min.js:8:22381
at wrappedCallback (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:10943:81)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:11029:26
at Scope.$eval (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:11949:28)
at Scope.$digest (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:11775:31)
at Scope.$apply (http://ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.js:12055:24) angular.js:9413
(anonymous function) angular.js:9413
(anonymous function) angular.js:6832
wrappedCallback angular.js:10946
(anonymous function) angular.js:11029
Scope.$eval angular.js:11949
Scope.$digest angular.js:11775
Scope.$apply angular.js:12055
(anonymous function) angular.js:17833
(anonymous function) angular.js:2612
forEach angular.js:309
eventHandler angular.js:2611
我檢查已經有幾個問題了,但我不確定我是否能夠完全理解這裏的錯誤。
爲什麼不簡單'if(mpttexclusion.indexOf(',')> -1)'? – Satpal
if(','in mpttexclusion) - >這很奇怪。你的意思是「if($ scope.mpttexclusion)?」 – pixelbits
'in'在對象中找到屬性,而不是子串。 –