0
我想使用for-in循環來檢查對象中的項目是否未定義。但是,只有當對象中已存儲值時,循環纔會運行。For-in循環無法處理對象中的未定義項目
下面是一個例子,我怎樣,我把值到對象:
<div>
<input type="radio" name="" id="" ng-model="user.fac_staff" value="">
<input type="radio" name="" id="" ng-model="user.fac_staff" value="">
<input type="radio" name="" id="" ng-model="user.fac_staff" value="">
</div>
<div>
<select class="" id="" name="" ng-options="ng repeat stuff" data-ng-model="user.college">
<option value="">Stuff</option>
</select>
</div>
<div>
<input type="radio" name="" id="" ng-model="user.source" value="">
<input type="radio" name="" id="" ng-model="user.source" value="">
<input type="radio" name="" id="" ng-model="user.source" value="">
</div>
<input type="text" class="" name="" id="" data-ng-model="user.name_awarding_agency">
<button type="submit" ng-click="ajs_function(user)">Click</button>
這裏有我想要在控制器做一個例子:
$scope.ajs_function = function(userObj) {
for(var key in userObj) {
if(userObj[key] == "undefined")
//do stuff
}
}
環路韓元一點都不跑。我試圖將鍵值顯示給控制檯,當沒有工作時,我嘗試向控制檯顯示一個計數器值,以查看它是否在執行任何操作。我還應該提到,我在通過同一個對象的函數中有一個類似的for-in循環,但該循環僅在已有數據時才運行。
我實際上在試過之前試過,並沒有得到不同的結果。這是爲了正確的做法嗎? –
你會得到什麼結果?當然,使用'typeof'是正確的做法,但你也可能在其中發生其他事情,導致問題。 –
我完全沒有結果。就我所知,該循環甚至不會遍歷該對象。另外,我確定typeof是正確的方法,因爲我已經看到它在許多其他來源中使用,但我不確定它爲什麼不適合我。但是,除了for-in循環之外還有別的方法可以做得更好,或者只是一種替代方法,也許呢? –