2017-02-06 29 views
0

對於我的模塊,我需要用兩個屬性聲明未知大小的用戶定義對象數組:數據類型和FullName。我希望能夠在創建時將這些屬性設置爲null。如何在java腳本中聲明未知大小的用戶定義對象數組

我試過下面的代碼。

var result = [{dtype:null, fname:null, }];

我得到錯誤:Uncaught TypeError:無法設置未定義的屬性'dtype'。

有什麼想法?

+0

'變種富= [];' – Will

+0

我怎樣才能初始化屬性? – codingyo

+1

沒有repro。你可能實際上並沒有使用JavaScript,但其他的東西,可能是打字稿?在任何瀏覽器中打開JavaScript控制檯。粘貼添加到問題中的內容。田田。作品。你的錯誤在於另一座城堡。 – Will

回答

1

所以JavaScript不支持定義或限制進入一個數組類型,你不必要麼指定大小,你可以不斷添加的對象它本身

但是,如果你想以限制走進它的類型,有一種方法

function addThing(thing) { 
    if(thing.hasOwnProperty("fullName") && thing.hasOwnProperty("dataType")) { 
     array.push(thing); 
    } 
} 

https://jsfiddle.net/9sL920qt/

0

應用諾亞的邏輯,我想這個解決方案,它爲我工作。

var result = []; 

有一個臨時對象:

var resultItem = {}; 

SET TEMP對象的值。

resultItem.fname = resultsinJson.Data[i][keys]; 
resultItem.dtype = resultsinJson.Data[i][keys] ; 

,然後將該對象添加到最終陣列

result[i] = resultItem; 
相關問題